社区
JavaScript
帖子详情
jquery 如何获取某个样式的的 除了第一个之外的所有元素呢
ahking
2015-12-24 04:08:41
jquery 如何获取某个样式的的 除了第一个之外的所有元素呢
...全文
9060
4
打赏
收藏
jquery 如何获取某个样式的的 除了第一个之外的所有元素呢
jquery 如何获取某个样式的的 除了第一个之外的所有元素呢
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
杨小事er
2015-12-24
打赏
举报
回复
引用 2 楼 杨小事er的回复:
$(“.id:not(‘.id:first’)”)
<pre class="brush: javascript">$(“.class:not(‘.class:first’)”)</pre>
杨小事er
2015-12-24
打赏
举报
回复
$(“.id:not(‘.id:first’)”)
slwsss
2015-12-24
打赏
举报
回复
:not(:first)
jQuery
详细教程
jQuery
详细教程,讲解很透彻, 一.
jQuery
语法实例 $(this).hide() 演示
jQuery
hide() 函数,隐藏当前的 HTML
元素
。 $("#test").hide() 演示
jQuery
hide() 函数,隐藏 id="test" 的
元素
。 $("p").hide() 演示
jQuery
hide() 函数,隐藏所有
元素
。 $(".test").hide() 演示
jQuery
hide() 函数,隐藏所有 class="test" 的
元素
。
jQuery
语法
jQuery
语法是为 HTML
元素
的选取编制的,可以对
元素
执行某些操作。 基础语法是:$(selector).action() • 美元符号定义
jQuery
• 选择符(selector)“查询”和“查找” HTML
元素
•
jQuery
的 action() 执行对
元素
的操作 示例 $(this).hide() - 隐藏当前
元素
$("p").hide() - 隐藏所有段落 $("p.test").hide() - 隐藏所有 class="test" 的段落 $("#test").hide() - 隐藏所有 id="test" 的
元素
提示:
jQuery
使用的语法是 XPath 与 CSS 选择器语法的组合。在本教程接下来的章节,您将学习到更多有关选择器的语法。 文档就绪函数 您也许已经注意到在我们的实例中的所有
jQuery
函数位于一个 document ready 函数中: $(document).ready(function(){ ---
jQuery
functions go here ---- }); 这是为了防止文档在完全加载(就绪)之前运行
jQuery
代码。 二.
jQuery
选择器 在前面的章节中,我们展示了一些有关如何选取 HTML
元素
的实例。 关键点是学习
jQuery
选择器是如何准确地选取您希望应用效果的
元素
。
jQuery
元素
选择器和属性选择器允许您通过标签名、属性名或内容对 HTML
元素
进行选择。 选择器允许您对 HTML
元素
组或单个
元素
进行操作。 在 HTML DOM 术语中: 选择器允许您对 DOM
元素
组或单个 DOM 节点进行操作。
jQuery
元素
选择器
jQuery
使用 CSS 选择器来选取 HTML
元素
。 $("p") 选取
元素
。 $("p.intro") 选取所有 class="intro" 的
元素
。 $("p#demo") 选取 id="demo" 的
第一个
元素
。
jQuery
属性选择器
jQuery
使用 XPath 表达式来选择带有给定属性的
元素
。 $("[href]") 选取所有带有 href 属性的
元素
。 $("[href='#']") 选取所有带有 href 值等于 "#" 的
元素
。 $("[href!='#']") 选取所有带有 href 值不等于 "#" 的
元素
。 $("[href$='.jpg']") 选取所有 href 值以 ".jpg" 结尾的
元素
。
jQuery
CSS 选择器
jQuery
CSS 选择器可用于改变 HTML
元素
的 CSS 属性。 下面的例子把所有 p
元素
的背景颜色更改为红色: 实例 $("p").css("background-color","red"); 更多的选择器实例 语法 描述 $(this) 当前 HTML
元素
$("p") 所有
元素
$("p.intro") 所有 class="intro" 的
元素
$(".intro") 所有 class="intro" 的
元素
$("#intro") id="intro" 的
第一个
元素
$("ul li:first") 每个 的
第一个
元素
$("[href$='.jpg']") 所有带有以 ".jpg" 结尾的属性值的 href 属性 $("div#intro .head") id="intro" 的
元素
中的所有 class="head" 的
元素
三.
jQuery
事件函数
jQuery
事件处理方法是
jQuery
中的核心函数。 事件处理程序指的是当 HTML 中发生某些事件时所调用的方法。术语由事件“触发”(或“激发”)经常会被使用。 通常会把
jQuery
代码放到 部分的事件处理方法中: 实例 $(document).ready(function(){ $("button").click(function(){ $("p").hide(); }); }); This is a heading This is a paragraph. This is another paragraph. Click me 亲自试一试 在上面的例子中,当按钮的点击事件被触发时会调用一个函数: $("button").click(function() {..some code... } ) 该方法隐藏所有
元素
: $("p").hide(); 单独文件中的函数 如果您的网站包含许多页面,并且您希望您的
jQuery
函数易于维护,那么请把您的
jQuery
函数放到独立的 .js 文件中。 当我们在教程中演示
jQuery
时,会将函数直接添加到 部分中。不过,把它们放到一个单独的文件中会更好,就像这样(通过 src 属性来引用文件): 实例
jQuery
名称冲突
jQuery
使用 $ 符号作为
jQuery
的简介方式。 某些其他 JavaScript 库中的函数(比如 Prototype)同样使用 $ 符号。
jQuery
使用名为 noConflict() 的方法来解决该问题。 var jq=
jQuery
.noConflict(),帮助您使用自己的名称(比如 jq)来代替 $ 符号。 亲自试一试 结论 由于
jQuery
是为处理 HTML 事件而特别设计的,那么当您遵循以下原则时,您的代码会更恰当且更易维护: • 把所有
jQuery
代码置于事件处理函数中 • 把所有事件处理函数置于文档就绪事件处理器中 • 把
jQuery
代码置于单独的 .js 文件中 • 如果存在名称冲突,则重命名
jQuery
库
jQuery
事件 下面是
jQuery
中事件方法的一些例子: Event 函数 绑定函数至 $(document).ready(function) 将函数绑定到文档的就绪事件(当文档完成加载时) $(selector).click(function) 触发或将函数绑定到被选
元素
的点击事件 $(selector).dblclick(function) 触发或将函数绑定到被选
元素
的双击事件 $(selector).focus(function) 触发或将函数绑定到被选
元素
的获得焦点事件 $(selector).mouseover(function) 触发或将函数绑定到被选
元素
的鼠标悬停事件 四.
jQuery
实例
jQuery
hide() 演示简单的
jQuery
hide() 函数。 $(document).ready(function(){ $("p").click(function(){ $(this).hide(); }); }); If you click on me, I will disappear.
jQuery
hide() 另一个 hide() 演示。如何隐藏部分文本。 $(document).ready(function(){ $(".ex .hide").click(function(){ $(this).parents(".ex").hide("slow"); }); }); div.ex { background-color:#e5eecc; padding:7px; border:solid 1px #c3c3c3; } Island Trading Hide me Contact: Helen Bennett Garden House Crowther Way London Paris Trading Hide me Contact: Marie Bertrand 265, Boulevard Charonne Paris
jQuery
slideToggle() 演示简单的 slide panel 效果 $(document).ready(function(){ $(".flip").click(function(){ $(".panel").slideToggle("slow"); }); }); div.panel,p.flip { margin:0px; padding:5px; text-align:center; background:#e5eecc; border:solid 1px #c3c3c3; } div.panel { height:120px; display:none; } W3School - 领先的 Web 技术教程站点 在 W3School,你可以找到你所需要的所有网站建设教程。 请点击这里
jQuery
fadeTo() 演示简单的
jQuery
fadeTo() 函数。 $(document).ready(function(){ $("button").click(function(){ $("div").fadeTo("slow",0.25); }); }); 点击这里查看淡出效果
jQuery
animate() 演示简单的
jQuery
animate() 函数。 $(document).ready(function(){ $("#start").click(function(){ $("#box").animate({height:300},"slow"); $("#box").animate({width:300},"slow"); $("#box").animate({height:100},"slow"); $("#box").animate({width:100},"slow"); }); }); Start Animation
jQuery
隐藏和显示 通过 hide() 和 show() 两个函数,
jQuery
支持对 HTML
元素
的隐藏和显示: 实例 $("#hide").click(function(){ $("p").hide(); }); $("#show").click(function(){ $("p").show(); }); 亲自试一试 $(document).ready(function(){ $("#hide").click(function(){ $("p").hide(); }); $("#show").click(function(){ $("p").show(); }); }); 如果点击“隐藏”按钮,我就会消失。 隐藏 显示 hide() 和 show() 都可以设置两个可选参数:speed 和 callback。 语法: $(selector).hide(speed,callback) $(selector).show(speed,callback) speed 参数规定显示或隐藏的速度。可以设置这些值:"slow", "fast", "normal" 或毫秒。 callback 参数是在 hide 或 show 函数完成之后被执行的函数名称。您将在本教程下面的章节学习更多有关 callback 参数的知识。 实例 $("button").click(function(){ $("p").hide(1000); }); 亲自试一试 $(document).ready(function(){ $("button").click(function(){ $("p").hide(1000); }); }); 隐藏 This is a paragraph with little content. This is another small paragraph.
jQuery
切换
jQuery
toggle() 函数使用 show() 或 hide() 函数来切换 HTML
元素
的可见状态。 隐藏显示的
元素
,显示隐藏的
元素
。 语法: $(selector).toggle(speed,callback) speed 参数可以设置这些值:"slow", "fast", "normal" 或 毫秒。 实例 $("button").click(function(){ $("p").toggle(); }); 亲自试一试 $(document).ready(function(){ $("button").click(function(){ $("p").toggle(); }); }); 切换 This is a paragraph with little content. This is another small paragraph. callback 参数是在该函数完成之后被执行的函数名称。您将在本教程下面的章节学习更多有关 callback 参数的知识。
jQuery
滑动函数 - slideDown, slideUp, slideToggle
jQuery
拥有以下滑动函数: $(selector).slideDown(speed,callback) $(selector).slideUp(speed,callback) $(selector).slideToggle(speed,callback) speed 参数可以设置这些值:"slow", "fast", "normal" 或毫秒。 callback 参数是在该函数完成之后被执行的函数名称。您将在本教程下面的章节学习更多有关 callback 参数的知识。 slideDown() 实例 $(".flip").click(function(){ $(".panel").slideDown(); }); 亲自试一试 $(document).ready(function(){ $(".flip").click(function(){ $(".panel").slideDown("slow"); }); }); div.panel,p.flip { margin:0px; padding:5px; text-align:center; background:#e5eecc; border:solid 1px #c3c3c3; } div.panel { height:120px; display:none; } W3School - 领先的 Web 技术教程站点 在 W3School,你可以找到你所需要的所有网站建设教程。 请点击这里 slideUp() 实例 $(".flip").click(function(){ $(".panel").slideUp() }) 亲自试一试 $(document).ready(function(){ $(".flip").click(function(){ $(".panel").slideUp("slow"); }); }); div.panel,p.flip { margin:0px; padding:5px; text-align:center; background:#e5eecc; border:solid 1px #c3c3c3; } div.panel { height:120px; } W3School - 领先的 Web 技术教程站点 在 W3School,你可以找到你所需要的所有网站建设教程。 请点击这里 slideToggle() 实例 $(".flip").click(function(){ $(".panel").slideToggle(); }); 亲自试一试 $(document).ready(function(){ $(".flip").click(function(){ $(".panel").slideToggle("slow"); }); }); div.panel,p.flip { margin:0px; padding:5px; text-align:center; background:#e5eecc; border:solid 1px #c3c3c3; } div.panel { height:120px; display:none; } W3School - 领先的 Web 技术教程站点 在 W3School,你可以找到你所需要的所有网站建设教程。 请点击这里
jQuery
Fade 函数 - fadeIn(), fadeOut(), fadeTo()
jQuery
拥有以下 fade 函数: $(selector).fadeIn(speed,callback) $(selector).fadeOut(speed,callback) $(selector).fadeTo(speed,opacity,callback) speed 参数可以设置这些值:"slow", "fast", "normal" 或 毫秒。 fadeTo() 函数中的 opacity 参数规定减弱到给定的不透明度。 callback 参数是在该函数完成之后被执行的函数名称。您将在本教程下面的章节学习更多有关 callback 参数的知识。 fadeTo() 实例 $("button").click(function(){ $("div").fadeTo("slow",0.25); }); 亲自试一试 $(document).ready(function(){ $("button").click(function(){ $("div").fadeTo("slow",0.25); }); }); 点击这里查看淡出效果 fadeOut() 实例 $("button").click(function(){ $("div").fadeOut(4000); }); 亲自试一试 $(document).ready(function(){ $("#test").click(function(){ $(this).fadeOut(4000); }); }); CLICK ME AWAY! 如果您点击上面的框,它会淡出直到消失为止。
jQuery
自定义动画
jQuery
函数创建自定义动画的语法: $(selector).animate({params},[duration],[easing],[callback]) 关键的参数是 params。它定义产生动画的 CSS 属性。可以同时设置多个此类属性: animate({width:"70%",opacity:0.4,marginLeft:"0.6in",fontSize:"3em"}); 第二个参数是 duration。它定义用来应用到动画的时间。它设置的值是:"slow", "fast", "normal" 或毫秒。 实例 1 $(document).ready(function(){ $("#start").click(function(){ $("#box").animate({height:300},"slow"); $("#box").animate({width:300},"slow"); $("#box").animate({height:100},"slow"); $("#box").animate({width:100},"slow"); }); }); 亲自试一试 $(document).ready(function(){ $("#start").click(function(){ $("#box").animate({height:300},"slow"); $("#box").animate({width:300},"slow"); $("#box").animate({height:100},"slow"); $("#box").animate({width:100},"slow"); }); }); Start Animation 实例 2 $(document).ready(function(){ $("#start").click(function(){ $("#box").animate({left:"100px"},"slow"); $("#box").animate({fontSize:"3em"},"slow"); }); }); 亲自试一试 $(document).ready(function(){ $("#start").click(function(){ $("#box").animate({left:"100px"},"slow"); $("#box").animate({fontSize:"3em"},"slow"); }); }); Start Animation HELLO HTML
元素
默认是静态定位,且无法移动。 如需使
元素
可以移动,请把 CSS 的 position 设置为 relative 或 absolute。
jQuery
效果 - 来自本页 函数 描述 $(selector).hide() 隐藏被选
元素
$(selector).show() 显示被选
元素
$(selector).toggle() 切换(在隐藏与显示之间)被选
元素
$(selector).slideDown() 向下滑动(显示)被选
元素
$(selector).slideUp() 向上滑动(隐藏)被选
元素
$(selector).slideToggle() 对被选
元素
切换向上滑动和向下滑动 $(selector).fadeIn() 淡入被选
元素
$(selector).fadeOut() 淡出被选
元素
$(selector).fadeTo() 把被选
元素
淡出为给定的不透明度 $(selector).animate() 对被选
元素
执行自定义动画 五.
JQuery
Callback 函数
jQuery
动画的问题 许多
jQuery
函数涉及动画。这些函数也许会将 speed 或 duration 作为可选参数。 例子:$("p").hide("slow") speed 或 duration 参数可以设置许多不同的值,比如 "slow", "fast", "normal" 或毫秒。 实例 $("button").click(function(){ $("p").hide(1000); }); 亲自试一试 $(document).ready(function(){ $("button").click(function(){ $("p").hide(1000); }); }); 隐藏 This is a paragraph with little content. This is another small paragraph. 由于 JavaScript 语句(指令)是逐一执行的 - 按照次序,动画之后的语句可能会产生错误或页面冲突,因为动画还没有完成。 为了避免这个情况,您可以以参数的形式添加 Callback 函数。
jQuery
Callback 函数 当动画 100% 完成后,即调用 Callback 函数。 典型的语法: $(selector).hide(speed,callback) callback 参数是一个在 hide 操作完成后被执行的函数。 错误(没有 callback) $("p").hide(1000); alert("The paragraph is now hidden"); 亲自试一试 $(document).ready(function(){ $("button").click(function(){ $("p").hide(2000); alert("The paragraph is now hidden"); }); }); Hide This is a paragraph with little content. 正确(有 callback) $("p").hide(1000,function(){ alert("The paragraph is now hidden"); }); 亲自试一试 $(document).ready(function(){ $("button").click(function(){ $("p").hide(1000,function(){ alert("The paragraph is now hidden"); }); }); }); Hide This is a paragraph with little content. 六.
jQuery
包含很多供改变和操作 HTML 的强大函数。 改变 HTML 内容 语法 $(selector).html(content) html() 函数改变所匹配的 HTML
元素
的内容(innerHTML)。 实例 $("p").html("W3School"); 亲自试一试 $(document).ready(function(){ $("button").click(function(){ $("p").html("W3School"); }); }); This is a heading This is a paragraph. This is another paragraph. 请点击这里 添加 HTML 内容 语法 $(selector).append(content) append() 函数向所匹配的 HTML
元素
内部追加内容。 语法 $(selector).prepend(content) prepend() 函数向所匹配的 HTML
元素
内部预置(Prepend)内容。 实例 $("p").append(" W3School"); 亲自试一试 $(document).ready(function(){ $("button").click(function(){ $("p").append(" W3School."); }); }); This is a heading This is a paragraph. This is another paragraph. 请点击这里 语法 $(selector).after(content) after() 函数在所有匹配的
元素
之后插入 HTML 内容。 语法 $(selector).before(content) before() 函数在所有匹配的
元素
之前插入 HTML 内容。 实例 $("p").after(" W3School."); 亲自试一试 $(document).ready(function(){ $("button").click(function(){ $("p").after(" W3School."); }); }); This is a heading This is a paragraph. This is another paragraph. 请点击这里
jQuery
HTML 操作 - 来自本页 函数 描述 $(selector).html(content) 改变被选
元素
的(内部)HTML $(selector).append(content) 向被选
元素
的(内部)HTML 追加内容 $(selector).prepend(content) 向被选
元素
的(内部)HTML “预置”(Prepend)内容 $(selector).after(content) 在被选
元素
之后添加 HTML $(selector).before(content) 在被选
元素
之前添加 HTML 七.
jQuery
CSS 操作
jQuery
拥有三种用于 CSS 操作的重要函数: • $(selector).css(name,value) • $(selector).css({properties}) • $(selector).css(name) CSS 操作实例 函数 css(name,value) 为所有匹配
元素
的给定 CSS 属性设置值: 实例 $(selector).css(name,value) $("p").css("background-color","red"); 亲自试一试 $(document).ready(function(){ $("button").click(function(){ $("p").css("background-color","red"); }); }); This is a heading This is a paragraph. This is another paragraph. Click me 函数 css({properties}) 同时为所有匹配
元素
的一系列 CSS 属性设置值: 实例 $(selector).css({properties}) $("p").css({"background-color":"red","font-size":"200%"}); 亲自试一试 $(document).ready(function(){ $("button").click(function(){ $("p").css({"background-color":"red","font-size":"200%"}); }); }); This is a heading This is a paragraph. This is another paragraph. Click me 函数 css(name) 返回指定的 CSS 属性的值: 实例 $(selector).css(name) $(this).css("background-color"); 亲自试一试 $(document).ready(function(){ $("div").click(function(){ $("#result").html($(this).css("background-color")); }); }); Click in the box
jQuery
Size 操作
jQuery
拥有两种用于尺寸操作的重要函数: • $(selector).height(value) • $(selector).width(value) Size 操作实例 函数 height(value) 设置所有匹配
元素
的高度: 实例 $(selector).height(value) $("#id100").height("200px"); 亲自试一试 $(document).ready(function(){ $("button").click(function(){ $("#id100").height("200px"); }); }); HELLO W3SCHOOL 请点击这里 函数 width(value) 设置所有匹配
元素
的宽度: 实例 $(selector).width(value) $("#id200").width("300px"); 亲自试一试 $(document).ready(function(){ $("button").click(function(){ $("#id200").width("300px"); }); }); HELLO W3SCHOOL 请点击这里
jQuery
CSS 函数 - 来自本页 CSS 属性 描述 $(selector).css(name,value) 为匹配
元素
设置
样式
属性的值 $(selector).css({properties}) 为匹配
元素
设置多个
样式
属性 $(selector).css(name) 获得
第一个
匹配
元素
的
样式
属性值 $(selector).height(value) 设置匹配
元素
的高度 $(selector).width(value) 设置匹配
元素
的宽度 八.
jQuery
参考手册 @
jQuery
选择器 选择器 实例 选取 * $("*") 所有
元素
#id $("#lastname") id="lastname" 的
元素
.class $(".intro") 所有 class="intro" 的
元素
element $("p") 所有
元素
.class.class $(".intro.demo") 所有 class="intro" 且 class="demo" 的
元素
:first $("p:first")
第一个
元素
:last $("p:last") 最后一个
元素
:even $("tr:even") 所有偶数
元素
:odd $("tr:odd") 所有奇数
元素
:eq(index) $("ul li:eq(3)") 列表中的第四个
元素
(index 从 0 开始) :gt(no) $("ul li:gt(3)") 列出 index 大于 3 的
元素
:lt(no) $("ul li:lt(3)") 列出 index 小于 3 的
元素
:not(selector) $("input:not(:empty)") 所有不为空的 input
元素
:header $(":header") 所有标题
元素
- :animated 所有动画
元素
:contains(text) $(":contains('W3School')") 包含指定字符串的所有
元素
:empty $(":empty") 无子(
元素
)节点的所有
元素
:hidden $("p:hidden") 所有隐藏的
元素
:visible $("table:visible") 所有可见的表格 s1,s2,s3 $("th,td,.intro") 所有带有匹配选择的
元素
[attribute] $("[href]") 所有带有 href 属性的
元素
[attribute=value] $("[href='#']") 所有 href 属性的值等于 "#" 的
元素
[attribute!=value] $("[href!='#']") 所有 href 属性的值不等于 "#" 的
元素
[attribute$=value] $("[href$='.jpg']") 所有 href 属性的值包含 ".jpg" 的
元素
:input $(":input") 所有
元素
:text $(":text") 所有 type="text" 的
元素
:password $(":password") 所有 type="password" 的
元素
:radio $(":radio") 所有 type="radio" 的
元素
:checkbox $(":checkbox") 所有 type="checkbox" 的
元素
:submit $(":submit") 所有 type="submit" 的
元素
:reset $(":reset") 所有 type="reset" 的
元素
:button $(":button") 所有 type="button" 的
元素
:image $(":image") 所有 type="image" 的
元素
:file $(":file") 所有 type="file" 的
元素
:enabled $(":enabled") 所有激活的 input
元素
:disabled $(":disabled") 所有禁用的 input
元素
:selected $(":selected") 所有被选取的 input
元素
:checked $(":checked") 所有被选中的 input
元素
@
jQuery
事件方法 事件方法会触发匹配
元素
的事件,或将函数绑定到所有匹配
元素
的某个事件。 触发实例: $("button#demo").click() 上面的例子将触发 id="demo" 的 button
元素
的 click 事件。 绑定实例: $("button#demo").click(function(){$("img").hide()}) 上面的例子会在点击 id="demo" 的按钮时隐藏所有图像。 方法 描述 bind() 向匹配
元素
附加一个或更多事件处理器 blur() 触发、或将函数绑定到指定
元素
的 blur 事件 change() 触发、或将函数绑定到指定
元素
的 change 事件 click() 触发、或将函数绑定到指定
元素
的 click 事件 dblclick() 触发、或将函数绑定到指定
元素
的 double click 事件 delegate() 向匹配
元素
的当前或未来的子
元素
附加一个或多个事件处理器 die() 移除所有通过 live() 函数添加的事件处理程序。 error() 触发、或将函数绑定到指定
元素
的 error 事件 event.isDefaultPrevented() 返回 event 对象上是否调用了 event.preventDefault()。 event.pageX 相对于文档左边缘的鼠标位置。 event.pageY 相对于文档上边缘的鼠标位置。 event.preventDefault() 阻止事件的默认动作。 event.result 包含由被指定事件触发的事件处理器返回的最后一个值。 event.target 触发事件的 DOM
元素
。 event.timeStamp 该属性返回从 1970 年 1 月 1 日到事件发生时的毫秒数。 event.type 描述事件的类型。 event.which 指示按了哪个键或按钮。 focus() 触发、或将函数绑定到指定
元素
的 focus 事件 keydown() 触发、或将函数绑定到指定
元素
的 key down 事件 keypress() 触发、或将函数绑定到指定
元素
的 key press 事件 keyup() 触发、或将函数绑定到指定
元素
的 key up 事件 live() 触发、或将函数绑定到指定
元素
的 load 事件 load() 触发、或将函数绑定到指定
元素
的 load 事件 mousedown() 触发、或将函数绑定到指定
元素
的 mouse down 事件 mouseenter() 触发、或将函数绑定到指定
元素
的 mouse enter 事件 mouseleave() 触发、或将函数绑定到指定
元素
的 mouse leave 事件 mousemove() 触发、或将函数绑定到指定
元素
的 mouse move 事件 mouseout() 触发、或将函数绑定到指定
元素
的 mouse out 事件 mouseover() 触发、或将函数绑定到指定
元素
的 mouse over 事件 mouseup() 触发、或将函数绑定到指定
元素
的 mouse up 事件 one() 向匹配
元素
添加事件处理器。每个
元素
只能触发一次该处理器。 ready() 文档就绪事件(当 HTML 文档就绪可用时) resize() 触发、或将函数绑定到指定
元素
的 resize 事件 scroll() 触发、或将函数绑定到指定
元素
的 scroll 事件 select() 触发、或将函数绑定到指定
元素
的 select 事件 submit() 触发、或将函数绑定到指定
元素
的 submit 事件 toggle() 绑定两个或多个事件处理器函数,当发生轮流的 click 事件时执行。 trigger() 所有匹配
元素
的指定事件 triggerHandler()
第一个
被匹配
元素
的指定事件 unbind() 从匹配
元素
移除一个被添加的事件处理器 undelegate() 从匹配
元素
移除一个被添加的事件处理器,现在或将来 unload() 触发、或将函数绑定到指定
元素
的 unload 事件 @
jQuery
效果函数 方法 描述 animate() 对被选
元素
应用“自定义”的动画 clearQueue() 对被选
元素
移除所有排队的函数(仍未运行的) delay() 对被选
元素
的所有排队函数(仍未运行)设置延迟 dequeue() 运行被选
元素
的下一个排队函数 fadeIn() 淡入被选
元素
至完全不透明 fadeOut() 淡出被选
元素
至完全不透明 fadeTo() 把被选
元素
减弱至给定的不透明度 hide() 隐藏被选的
元素
queue() 显示被选
元素
的排队函数 show() 显示被选的
元素
slideDown() 通过调整高度来滑动显示被选
元素
slideToggle() 对被选
元素
进行滑动隐藏和滑动显示的切换 slideUp() 通过调整高度来滑动隐藏被选
元素
stop() 停止在被选
元素
上运行动画 toggle() 对被选
元素
进行隐藏和显示的切换 @
jQuery
文档操作方法 这些方法对于 XML 文档和 HTML 文档均是适用的,除了:html()。 方法 描述 addClass() 向匹配的
元素
添加指定的类名。 after() 在匹配的
元素
之后插入内容。 append() 向匹配的
元素
内部追加内容。 appendTo() 向匹配的
元素
内部追加内容。 attr() 设置或返回匹配
元素
的属性和值。 before() 在每个匹配的
元素
之前插入内容。 clone() 创建匹配
元素
集合的副本。 detach() 从 DOM 中移除匹配
元素
集合。 empty() 删除匹配的
元素
集合中所有的子节点。 hasClass() 检查匹配的
元素
是否拥有指定的类。 html() 设置或返回匹配的
元素
集合中的 HTML 内容。 insertAfter() 把匹配的
元素
插入到另一个指定的
元素
集合的后面。 insertBefore() 把匹配的
元素
插入到另一个指定的
元素
集合的前面。 prepend() 向每个匹配的
元素
内部前置内容。 prependTo() 向每个匹配的
元素
内部前置内容。 remove() 移除所有匹配的
元素
。 removeAttr() 从所有匹配的
元素
中移除指定的属性。 removeClass() 从所有匹配的
元素
中删除全部或者指定的类。 replaceAll() 用匹配的
元素
替换所有匹配到的
元素
。 replaceWith() 用新内容替换匹配的
元素
。 text() 设置或返回匹配
元素
的内容。 toggleClass() 从匹配的
元素
中添加或删除一个类。 unwrap() 移除并替换指定
元素
的父
元素
。 val() 设置或返回匹配
元素
的值。 wrap() 把匹配的
元素
用指定的内容或
元素
包裹起来。 wrapAll() 把所有匹配的
元素
用指定的内容或
元素
包裹起来。 wrapinner() 将每一个匹配的
元素
的子内容用指定的内容或
元素
包裹起来。 @
jQuery
属性操作方法 下面列出的这些方法获得或设置
元素
的 DOM 属性。 这些方法对于 XML 文档和 HTML 文档均是适用的,除了:html()。 方法 描述 addClass() 向匹配的
元素
添加指定的类名。 attr() 设置或返回匹配
元素
的属性和值。 hasClass() 检查匹配的
元素
是否拥有指定的类。 html() 设置或返回匹配的
元素
集合中的 HTML 内容。 removeAttr() 从所有匹配的
元素
中移除指定的属性。 removeClass() 从所有匹配的
元素
中删除全部或者指定的类。 toggleClass() 从匹配的
元素
中添加或删除一个类。 val() 设置或返回匹配
元素
的值。 @
jQuery
CSS 操作函数 下面列出的这些方法设置或返回
元素
的 CSS 相关属性。 CSS 属性 描述 css() 设置或返回匹配
元素
的
样式
属性。 height() 设置或返回匹配
元素
的高度。 offset() 返回
第一个
匹配
元素
相对于文档的位置。 offsetParent() 返回最近的定位祖先
元素
。 position() 返回
第一个
匹配
元素
相对于父
元素
的位置。 scrollLeft() 设置或返回匹配
元素
相对滚动条顶部的偏移。 scrollTop() 设置或返回匹配
元素
相对滚动条左侧的偏移。 width() 设置或返回匹配
元素
的宽度。 @
jQuery
Ajax 操作函数
jQuery
库拥有完整的 Ajax 兼容套件。其中的函数和方法允许我们在不刷新浏览器的情况下从服务器加载数据。 函数 描述
jQuery
.ajax() 执行异步 HTTP (Ajax) 请求。 .ajaxComplete() 当 Ajax 请求完成时注册要调用的处理程序。这是一个 Ajax 事件。 .ajaxError() 当 Ajax 请求完成且出现错误时注册要调用的处理程序。这是一个 Ajax 事件。 .ajaxSend() 在 Ajax 请求发送之前显示一条消息。
jQuery
.ajaxSetup() 设置将来的 Ajax 请求的默认值。 .ajaxStart() 当首个 Ajax 请求完成开始时注册要调用的处理程序。这是一个 Ajax 事件。 .ajaxStop() 当所有 Ajax 请求完成时注册要调用的处理程序。这是一个 Ajax 事件。 .ajaxSuccess() 当 Ajax 请求成功完成时显示一条消息。
jQuery
.get() 使用 HTTP GET 请求从服务器加载数据。
jQuery
.getJSON() 使用 HTTP GET 请求从服务器加载 JSON 编码数据。
jQuery
.getScript() 使用 HTTP GET 请求从服务器加载 JavaScript 文件,然后执行该文件。 .load() 从服务器加载数据,然后把返回到 HTML 放入匹配
元素
。
jQuery
.param() 创建数组或对象的序列化表示,适合在 URL 查询字符串或 Ajax 请求中使用。
jQuery
.post() 使用 HTTP POST 请求从服务器加载数据。 .serialize() 将表单内容序列化为字符串。 .serializeArray() 序列化表单
元素
,返回 JSON 数据结构数据。 @
jQuery
遍历函数
jQuery
遍历函数包括了用于筛选、查找和串联
元素
的方法。 函数 描述 .add() 将
元素
添加到匹配
元素
的集合中。 .andSelf() 把堆栈中之前的
元素
集添加到当前集合中。 .children() 获得匹配
元素
集合中每个
元素
的所有子
元素
。 .closest() 从
元素
本身开始,逐级向上级
元素
匹配,并返回最先匹配的祖先
元素
。 .contents() 获得匹配
元素
集合中每个
元素
的子
元素
,包括文本和注释节点。 .each() 对
jQuery
对象进行迭代,为每个匹配
元素
执行函数。 .end() 结束当前链中最近的一次筛选操作,并将匹配
元素
集合返回到前一次的状态。 .eq() 将匹配
元素
集合缩减为位于指定索引的新
元素
。 .filter() 将匹配
元素
集合缩减为匹配选择器或匹配函数返回值的新
元素
。 .find() 获得当前匹配
元素
集合中每个
元素
的后代,由选择器进行筛选。 .first() 将匹配
元素
集合缩减为集合中的
第一个
元素
。 .has() 将匹配
元素
集合缩减为包含特定
元素
的后代的集合。 .is() 根据选择器检查当前的匹配
元素
集合,如果存在至少一个匹配
元素
,则返回 true。 .last() 将匹配
元素
集合缩减为集合中的最后一个
元素
。 .map() 把当前匹配集合中的每个
元素
传递给一个函数,产生包含返回值的新的
jQuery
对象。 .next() 获得匹配
元素
集合中每个
元素
紧邻的同辈
元素
。 .nextAll() 获得匹配
元素
集合中每个
元素
之后的所有同辈
元素
,由选择器进行筛选(可选)。 .nextUntil() 获得每个
元素
之后所有的同辈
元素
,直到遇到匹配选择器的
元素
为止。 .not() 从匹配
元素
集合中删除
元素
。 .offsetParent() 获得用于定位的
第一个
父
元素
。 .parent() 获得当前匹配
元素
集合中每个
元素
的父
元素
,由选择器筛选(可选)。 .parentsUntil() 获得当前匹配
元素
集合中每个
元素
的祖先
元素
,直到遇到匹配选择器的
元素
为止。 .prev() 获得匹配
元素
集合中每个
元素
紧邻的前一个同辈
元素
,由选择器筛选(可选)。 .prevAll() 获得匹配
元素
集合中每个
元素
之前的所有同辈
元素
,由选择器进行筛选(可选)。 .prevUntil() 获得每个
元素
之前所有的同辈
元素
,直到遇到匹配选择器的
元素
为止。 .siblings() 获得匹配
元素
集合中所有
元素
的同辈
元素
,由选择器筛选(可选)。 .slice() 将匹配
元素
集合缩减为指定范围的子集。 @
jQuery
数据存储函数 这些方法允许我们将指定的 DOM
元素
与任意数据相关联。 函数 描述 .data() 存储与匹配
元素
相关的任意数据。
jQuery
.data() 存储与指定
元素
相关的任意数据。 .removeData() 移除之前存放的数据。
jQuery
.removeData() 移除之前存放的数据。 @
jQuery
队列控制函数 函数 描述 .clearQueue() 从队列中删除所有未运行的项目。 .dequeue() 从队列最前端移除一个队列函数,并执行它。
jQuery
.dequeue() 从队列最前端移除一个队列函数,并执行它。 .queue() 显示或操作匹配
元素
所执行函数的队列。
jQuery
.queue() 显示或操作匹配
元素
所执行函数的队列。 九.
jQuery
核心函数 函数 描述
jQuery
() 接受一个字符串,其中包含了用于匹配
元素
集合的 CSS 选择器。 实例 找出所有属于 div
元素
的子
元素
的 p
元素
,然后设置其边框属性: $("div > p").css("border", "1px solid gray"); 亲自试一试 定义和用法
jQuery
() 方法接受一个字符串,其中包含了用于匹配
元素
集合的 CSS 选择器。
jQuery
() 函数有三种语法: 语法 1 接受一个字符串,其中包含了用于匹配
元素
集合的 CSS 选择器:
jQuery
(selector, [context]) 详细用法 语法 2 使用原始 HTML 的字符串来创建 DOM
元素
:
jQuery
(html,[ownerDocument]) 详细用法 语法 3 绑定一个在 DOM 文档载入完成后执行的函数:
jQuery
( callback ) 详细用法
jQuery
( selector, [ context ] ) 该语法有以下几种用法: 用法 1 :设置选择器环境 语法
jQuery
(selector, [context]) 默认情况下,选择器从文档根部对 DOM 进行搜索。不过,可以为 $() 设置可选的 context 参数。 例如,如果我们希望在一个 callback 中搜索一个
元素
,可以限定下面的搜索: 实例 $("div.foo").click(function() { $("span", this).addClass("bar"); }); 由于我们已经将 span 选择器限定到 this 这个环境中,只有被点击
元素
中的 span 会得到附加的 class。 在内部,选择器环境是通过 .find() 方法实现的,因此 $("span", this) 等价于 $(this).find("span")。
jQuery
的核心功能都是通过这个函数实现的。
jQuery
中的一切都基于这个函数,或者说都是在以某种方式使用这个函数。这个函数最基本的用法就是向它传递一个表达式(通常由 CSS 选择器组成),然后根据这个表达式来查找所有匹配的
元素
。 默认情况下, 如果没有指定 context 参数,$() 将在当前的 HTML document 中查找 DOM
元素
;如果指定了 context 参数,如一个 DOM
元素
集或
jQuery
对象,那就会在这个 context 中查找。在
jQuery
1.3.2 以后,其返回的
元素
顺序等同于在 context 中出现的先后顺序。 用法 2 :使用 DOM
元素
语法
jQuery
(element) 该函数允许我们通过使用以其他方式找到的 DOM
元素
来创建
jQuery
对象。该功能通常的用法是,对已经通过 this 关键字传递到 callback 函数的
元素
调用
jQuery
的方法: 实例 $("div.foo").click(function() { $(this).slideUp(); }); 此例会在
元素
被点击时使用滑动动画对其进行隐藏。由于处理程序接受的 this 关键词中的被点击项目是纯的 DOM
元素
,因此在对其调用
jQuery
的方法之前,必须用
jQuery
对象包装该
元素
。 这个函数也可以接收 XML 文档和 Window 对象(虽然它们不是 DOM
元素
)作为有效的参数。 当 XML 数据从 Ajax 调用中返回后,我们可以使用 $() 函数通过
jQuery
对象包装该数据。一旦完成,我们就可以使用 .find() 和其他 DOM 遍历方法来取回 XML 结构中单个
元素
。 用法 3 :克隆
jQuery
对象 语法
jQuery
(
jQuery
object) 当以参数的形式向 $() 函数传递
jQuery
对象后,会创建一个该对象的副本。与初始对象一样,新的
jQuery
对象引用相同的 DOM
元素
。 用法 4 :返回空的集合 语法
jQuery
() 对于
jQuery
1.4,调用无参数的
jQuery
() 方法会返回空的
jQuery
集合。在之前版本的
jQuery
中,这样会返回包含 document 节点的集合。
jQuery
( html, [ ownerDocument ] ) 该语法有以下几种用法: 用法 1 :创建新的
元素
语法
jQuery
(html,[ownerDocument]) 你可以传递一个手写的 HTML 字符串,或者由某些模板引擎或插件创建的字符串,也可以是通过 AJAX 加载过来的字符串。但是在你创建 input
元素
的时会有限制,可以参考第二个示例。 当然这个字符串可以包含斜杠 (比如一个图像地址),还有反斜杠。当你创建单个
元素
时,请使用闭合标签或 XHTML 格式。例如,创建一个 span ,可以用 $("") 或 $("") ,但不推荐 $("")。在
jQuery
中,这个语法等同于 $(document.createElement("span"))。 如果以参数的形式将字符串传递给 $(),
jQuery
会检查字符串是否是 HTML (比如,字符串某些位置存在标签)。如果不是,则把字符串解释为选择器表达式,请见上面的讲解。但如果字符串是 HTML 片段,则
jQuery
试图创建由该 HTML 片段描述的 DOM
元素
。然后会创建并返回一个引用这些 DOM
元素
的
jQuery
对象: 实例 $("My new text").appendTo("body"); 如果 HTML 片段比不含属性的简单标签更复杂,如同上面例子中的 HTML,那么
元素
实际的创建过程是由浏览器的 innerHTML 机制完成的。具体地讲,
jQuery
会创建新的
元素
,然后为传入的 HTML 片段设置
元素
的 innerHTML 属性。当参数只是简单的标签,比如$("") 或 $(""),
jQuery
会通过内生的 JavaScript createElement() 函数来创建
元素
。 要确保跨平台兼容性,片段的结构必须良好。能够包含其他
元素
的标签必须成对出现(带有关闭标签): $(""); 不过,
jQuery
也允许类似 XML 的标签语法: $(""); 无法包含其他
元素
的标签可以关闭,也可以不关闭: $(""); $(""); 用法 2 :设置属性和事件 语法
jQuery
(html,props) 对于
jQuery
1.4,我们可以向第二个参数传递一个属性映射。该参数接受能够传递给 .attr() 方法的属性的超集。此外,可以传递任意的事件类型,并可以调用下面的
jQuery
方法:val, css, html, text, data, width, height, or offset. 注意,Internet Explorer 不允许你创建 input
元素
并改变其类型;您必须使用例如 "" 来规定类型。 实例 创建一个
元素
,同时设定 type 属性、属性值,以及一些事件。 $("", { type: "text", val: "Test", focusin: function() { $(this).addClass("active"); }, focusout: function() { $(this).removeClass("active"); } }).appendTo("form");
jQuery
( callback ) 允许你绑定一个在 DOM 文档载入完成后执行的函数。 该函数的作用如同 $(document).ready() 一样,只不过用这个函数时,需要把页面中所有需要在 DOM 加载完成时执行的其他 $() 操作符都包装到其中来。尽管从技术上来说,这个函数是可链接的,但真正以这种方式链接的情况并不多。 例子 当DOM加载完成后,执行其中的函数: $(function(){ // 文档就绪 }); 函数 描述
jQuery
.noConflict() 运行这个函数将变量 $ 的控制权让渡给
第一个
实现它的那个库。 定义和用法 noConflict() 方法让渡变量 $ 的
jQuery
控制权。 语法
jQuery
.noConflict([removeAll]) 参数 描述 removeAll 布尔值。指示是否允许彻底将
jQuery
变量还原。 说明 许多 JavaScript 库使用 $ 作为函数或变量名,
jQuery
也一样。在
jQuery
中,$ 仅仅是
jQuery
的别名,因此即使不使用 $ 也能保证所有功能性。假如我们需要使用
jQuery
之外
的另一 JavaScript 库,我们可以通过调用 $.noConflict() 向该库返回控制权: $.noConflict(); // 使用另一个库的 $ 的代码 可以与 .ready() 方法结合起来使用,来为
jQuery
对象起别名,这项技术非常有效: $.noConflict();
jQuery
(document).ready(function($) { // 使用
jQuery
$ 的代码 }); // 使用其他库的 $ 的代码 此外,通过向该方法传递参数 true,我们可以将 $ 和
jQuery
的控制权都交还给原来的库。用之前请考虑清楚! 这是相对于简单的 noConflict 方法更极端的版本,因为这将完全重新定义
jQuery
。这通常用于一种极端的情况,比如你想要将
jQuery
嵌入一个高度冲突的环境。注意:调用此方法后极有可能导致插件失效。 实例 例子 1 将 $ 引用的对象映射回原始的对象:
jQuery
.noConflict();
jQuery
("div p").hide(); // 使用
jQuery
$("content").style.display = "none"; // 使用其他库的 $() 例子 2 恢复使用别名 $,然后创建并执行一个函数,在这个函数的作用域中仍然将 $ 作为
jQuery
的别名来使用。在这个函数中,原来的 $ 对象是无效的。这个函数对于大多数不依赖于其他库的插件都十分有效:
jQuery
.noConflict(); (function($) { $(function() { // 使用 $ 作为
jQuery
别名的代码 }); })(
jQuery
); ... // 其他用 $ 作为别名的库的代码 例子 3 可以将
jQuery
.noConflict() 与简写的 ready 结合,使代码更紧凑:
jQuery
.noConflict()(function(){ // 使用
jQuery
的代码 }); ... // 其他库使用 $ 做别名的代码 例子 4 创建一个新的别名用以在接下来的库中使用
jQuery
对象: var j =
jQuery
.noConflict(); j("div p").hide(); // 基于
jQuery
的代码 $("content").style.display = "none"; // 基于其他库的 $() 代码 例子 5 完全将
jQuery
移到一个新的命名空间: var dom = {}; dom.query =
jQuery
.noConflict(true); 结果: dom.query("div p").hide(); // 新
jQuery
的代码 $("content").style.display = "none"; // 另一个库 $() 的代码
jQuery
("div > p").hide(); // 另一个版本
jQuery
的代码
jquery
插件使用方法大全
Jquery
是继prototype之后又一个优秀的Javascrīpt框架。它是轻量级的js库(压缩后只有21k) ,它兼容CSS3,还兼容各种浏览器 (IE 6.0+, FF 1.5+, Safari 2.0+, Opera 9.0+)。
jQuery
使用户能更方便地处理HTML documents、events、实现动画效果,并且方便地为网站提供AJAX交互。
jQuery
还有一个比较大的优势是,它的文档说明很全,而且各种应用也说得很详细,同时还有许多成熟的插件可供选择。
jQuery
能够使用户的html页保持代码和html内容分离,也就是说,不用再在html里面插入一堆js来调用命令了,只需定义id即可。 目录 简介 找到你了!
Jquery
对象 代替body标签的onload 事件机制 同一函数实现get\set ajax 渐入淡出 plugin 历史版本 1、新的事件.on() .off() 3、动画的改进 1.42版介绍
JQuery
插件 让Dreamweaver支持提示代码功能 引入
JQuery
简介 找到你了!
Jquery
对象 代替body标签的onload 事件机制 同一函数实现get\set ajax 渐入淡出 plugin历史版本1、新的事件.on() .off()3、动画的改进1.42版介绍
JQuery
插件让Dreamweaver支持提示代码功能引入
JQuery
展开编辑本段简介
jQuery
由美国人John Resig创建,至今已吸引了来自世界各地的众多javascript高手加入其team,包括来自德国的Jörn Zaefferer,罗马尼亚的Stefan Petre等等。
jQuery
是继prototype之后又一个优秀的Javascrīpt框架。其宗旨是——WRITE LESS,DO MORE,写更少的代码,做更多的事情。 由于目前高校基本尚未开JavaScript的相关课程,目前
jQuery
的学习,使用,研究都仅限于在职Web程序员之间。 用jq的前提,首先要引用一个有jq的文件 [removed][removed] 这个是
jquery
官方最新的地址。可用在自己网站里加个这个,就能使用
jquery
了。 但仍然建议下载到本地服务器上。 编辑本段找到你了! 在编写js库代码时候,你一定经常和“$”美元符号打交道吧?无论prototype还是DWR都使用了$代替频繁的document.getElementById()操作。
jQuery
也这样做了,但是,它的功能远非如此,瞧瞧以下的
jQuery
代码,你就会发现它的美丽: 代码 var someElement = $("#myId"); 看起来比其他两个框架的要多了一个#,好,看看下面的用法: 代码 $("div p"); // (1) $("div.container"); // (2) $("div #msg"); // (3) $("table a",context); // (4) 在prototype里看过这样的写法吗?第一行代码得到所有div标签下的p
元素
。第二行代码得到class 为container的div
元素
,第三行代码得到标签下面id为msg的div
元素
(不过最好别这样写,因为
jQuery
需要遍历所有的div
元素
,对于带id的
元素
,直接用$("#id"))。第四行代码得到context为上下文的table里面所有的链接
元素
。 如果你熟悉CSS,你会觉得这些写法很眼熟!对了。正是。看出奥妙了吧。
jQuery
就是如此强大,你可以轻易地找到DOM中的任何
元素
,而这也是
jQuery
设计之初query的真实含义(查询)。 编辑本段
Jquery
对象
jquery
提供了很多便利的函数,如each(fn),但是使用这些函数的前提是:你使用的对象是
Jquery
对象。使一个Dom对象成为一个
Jquery
对象很简单,通过下面一些方式(只是一部分): 代码 var a = $("#cid"); var b = $("
hello
"); var c = document.createElement("table"); var tb = $(c); 编辑本段代替body标签的onload 这个惯例,也许是除了$()
之外
,用得最多的地方了。下面一段代码: 代码 $(document).ready(function(){ alert("hello"); });(1) <body>(2) <body>这里的alert('hello');要等到页面全部加载完毕才执行,注意是全部加载,包括dom,图片等其它资源。 而$(document).ready(function(){ alert("hello"); });(1) 当dom加载完就可以执行了。 代码1同时做到表现和逻辑分离。并且可以在不同的js文件中做相同的操作,即$(document).ready (fn)可以在一个页面中重复出现,而不会冲突。基本上
Jquery
的很多plugin都是利用这个特性,正因为这个特性,多个plugin共同使用起来,在初始化时不会发生冲突。 当使用
jquery
时,推荐使用代码1。 编辑本段事件机制 我们大量使用的事件可能就是button的onclick了。以前习惯在input
元素
上写onclick = "fn()",使用
jquery
可以使javascrīpt代码与html代码分离,保持HTML的清洁,还可以很轻松地绑定事件,甚至你可以不知道“事件”这个名词。 代码 $(document).ready(function() { $("#clear").click(function(){ alert("i am about to clear the table"); }); $("form[12]").submit(validate); }); function validate(){ //do some form validation } 编辑本段同一函数实现get\set 代码 $("selector").load(url,data,function(response,status,xhr)) 该方法是最简单的从服务器
获取
数据的方法。它几乎与 $.get(url, data, success) 等价,不同的是它不是全局函数,并且它拥有隐式的回调函数。当侦测到成功的响应时(比如,当 textStatus 为 "success" 或 "notmodified" 时),.load() 将匹配
元素
的 HTML 内容设置为返回的数据。这意味着该方法的大多数使用会非常简单。 编辑本段ajax 这是一个ajax横行的时代。多少人,了不了解ajax的都跟着用上一把。呵。使用
jquery
实现ajax同样异常简单 代码 (1) $.get("search. do",{id:1},rend); function rend(xml){ alert(xml); } (2) $.post("search. do",{id:1},rend); function rend(xml){ alert(xml); } (3) $("#msg").ajaxStart(function(){ this.html("正在加载。。。。"); }); (4) $("#msg").ajaxSuccess(function(){ this.html("加载完成!"); }); 这些都是较常用的方法,get和post用法一样。
第一个
参数是异步请求的url,第二个为参数,第三个回调方法。 (4)的方法会在指定的Dom对象上绑定响应ajax执行的事件。 (5)同步加载数据。发送请求时锁住浏览器。需要锁定用户交互操作时使用同步方式。 var html = $.ajax({ url: "some.php", async: false }).responseText; (6) 保存数据到服务器,成功时显示信息。 $.ajax({ type: "POST", url: "some.php", data: "name=John&location=Boston", success: function(msg){ alert( "Data Saved: " + msg ); } }); 编辑本段渐入淡出 代码 $("#msg").show("fast"); $("#msg").hide("slow"); $("#msg").fadeIn(); $("#msg").fadeOut(); 没错,上面两行代码已经分别实现了一个id为Msg的
jquery
对象的渐入和淡出。做一个像Gmail一样的动态加载通知条,用
jquery
就那么简单。两个函数接受的参数除了快慢等,还可以接收整型,作为渐入或淡出的完成时间,单位为MS。 编辑本段plugin 这也是一个插件的时代。
jquery
插件给我的感觉清一色的清洁,简单。如Jtip,要使用它的功能,只需要在你的
元素
的class上加上Jtip,并引入jtip.js及其
样式
即可以了。其他事情插件全包。我喜欢
jquery
的一个重要原因是发现她已经有了很多很好,很精彩的插件。 写得很烂。可能大家看不出
jquery
的好处。嗯,光听是没用的,试用一下吧。你会发觉很有趣。 暂时告一段落吧。待有新的发现再来分享。 加一些
Jquery
的资源: http://www.visual
jquery
. com/index.xml 很好的API查询站点 http://
jquery
. com/demo/thickbox/ 知道lightBox吧,看看
Jquery
是怎样实现相同的东西 http://
jquery
. org. cn/visual/cn/index.xml //不错的
JQUERY
中文学习 推荐 微软的visual studio 2008 sp1支持对
jquery
的动态提示,只要在代码页导入对应的vsdoc脚本就可以。 目前为止,
jQuery
的最新版本为1.7.2。 编辑本段历史版本
jQuery
1.0(2006年8月):该库的
第一个
稳定版本,已经具有了对CSS选择符、事件处理和AJAX交互的稳健支持。
jQuery
1.1(2007年1月):这一版大幅简化了API。许多较少使用的方法被合并,减少了需要掌握和解释的方法数量。
jQuery
1.1.3(2007年7月):这次小版本变化包含了对
jQuery
选择符引擎执行速度的显著提升。从这个版本开始,
jQuery
的性能达到了Prototype、Mootools以及Dojo等同类JavaScript库的水平。
jQuery
1.2(2007年9月):这一版去掉了对XPath选择符的支持,原因是相对于CSS语法它已经变得多余了。这一版能够支持对效果的更灵活定制,而且借助新增的命名空间事件,也使插件开发变得更容易。
jQuery
UI(2007年9月):这个新的插件套件是作为曾经流行但已过时的Interface插件的替代项目而发布的。
jQuery
UI中包含大量预定义好的部件(widget),以及一组用于构建高级
元素
(例如可拖放的界面
元素
)的工具。
jQuery
1.2.6(2008年5月):这一版主要是将Brandon Aaron开发的流行的Dimensions插件的功能移植到了核心库中。
jQuery
1.3(2009年1月):这一版使用了全新的选择符引擎Sizzle,库的性能也因此有了极大提升。这一版正式支持事件委托特性。
jQuery
1.3.2(2009年2月):这次小版本升级进一步提升了库的性能,例如改进了:visible/:hidden选择符、.height()/.width()方法的底层处理机制。另外,也支持查询的
元素
按文档顺序返回。
jQuery
1.4(2010年1月14号对)代码库进行了内部重写组织,开始建立一些风格规范。老的core.js文件被分为attribute.js, css.js, data.js, manipulation.js, traversing.js和queue.js;CSS和attribute的逻辑分离。
jQuery
1.5(2011年1月31日):该版本修复了83个bug,解决了460个问题。重大改进有:重写了Ajax模块;新增延缓对像(Deferred Objects);
jQuery
替身——
jQuery
.sub();增强了遍历相邻节点的性能;
jQuery
开发团队构建系统的改进。 1.4重要新特性: ·常用方法的性能大幅提升:重写了大部分较早期的函数; ·更容易使用的设置函数(setter function):为所有对象新增了许多易用的设置函数; ·对Ajax的改进:引入了许多Ajax和JSON处理方面的更新,包括HTML5
元素
的序列化; ·attribute(改进了.attr()的性能)、
jQuery
()核心函数、CSS(.css()性能有两倍提升)、特效和事件、DOM操作等也有显著改进 1.5 美国时间1月31日John Resig在
jQuery
官方博客发表文章,宣布
jQuery
1.5正式版已经如期开发完成,可以下载使用。压缩版本
jQuery
Minified29KB,不压缩版本
jQuery
Regular(用于阅读和调试)207KB。由于
jQuery
已经成为目前最流行的JavaScript库,得到广泛的支持,新版本的发布当然非常引人注目。 重要变化: 1. Ajax重写Ajax模块完全进行了重写。新增一个jXHR对象,为不同浏览器内置的XMLHttpRequest提供了一致的超集。对于XMLHttpRequest
之外
的传输机制,比如JSONP请求,jXHR对象也可以进行处理。(详情可以参见:
jQuery
.ajax文档) 此外,系统的可扩展性大大增强,可以附加各种数据处理器、过滤器和传输机制,为开发新的Ajax插件提供了方便。 2. 延迟对象 延迟对象(Deferred Object,
jQuery
.Deferred对象)是一个可链接的(chainable)实用工具对象,实现了Promise接口,可以在回调队列中注册多个回调、调用回调队列并转发任何同步/异步函数的成败状态。正如Using Deferreds in
jQuery
1.5一文中说明的,其结果是在
jQuery
中能够将依赖于某个任务(事件)结果的逻辑与任务本身解耦了。这一点在JavaScript中其实并不新鲜,Mochikit和Dojo等已经实现有些日子了。由于
jQuery
1.5的Ajax模块内置使用了延迟对象,因此现在通过
jQuery
编写Ajax程序将自动获得这一功能。 开发人员借此可以使用无法立即获得的返回值(如异步Ajax请求的返回结果),而且第一次能够附加多个事件处理器。 例如,使用了新的
jQuery
内部Ajax API就可以实现下面的代码了: // Assign handlers immediately after making the request, // and remember the jxhr object for this request var jxhr = $.ajax({ url: "example.php" }) .success(function() { alert("success"); }) .error(function() { alert("error"); }) .complete(function() { alert("complete"); });// perform other work here ... // Set another completion function for the request above jxhr.complete(function(){ alert("second complete"); }); 此外,使用
jQuery
.Deferred还可以开发自己的延迟对象。更多详情参见:延迟对象文档。 3.
jQuery
.sub()
jQuery
1.5提供了一种创建和修改
jQuery
副本的方式。可以用来添加不向外部公开的方法,或者对
jQuery
的某些方法进行重新定义以提供新功能,或者提供更好的封装、避免名称空间冲突。当然,也可以用来开发插件,但Resig强烈建议在开发插件之前,先考虑
jQuery
UI widget工厂。 值得注意的是,sub函数并不提供真正的隔离,所有方法、数据、调用仍然依靠
jQuery
本身来支持。 4. 遍历性能提高 在新版本中.children(), .pre(), .next()几个常用的遍历函数性能有了显著提高。 5. 内部开发系统 John Resig还特别提到了
jQuery
团队内部开发系统的两点改变:一是服务器端用Node.js替换了老的Java/Rhino系统,使得团队可以专注于JavaScript环境的新变化;二是所用的代码优化程序从Google Closure切换到UglifyJS,新工具的压缩效果非常令人满意。 有意思的是,此前UglifyJS开发者曾经公布过自己的测试结果,表明对
jQuery
的压缩结果UglifyJS要比Closure略大(都在72KB左右),但运行速度快得多,而且Closure不太安全。看来,这段时间UglifyJS的进展也很快啊。
jQuery
1.5.2 在1.5的基础上修正的大量的bug 1,7b 2011年09月29日
jQuery
1.7 的
第一个
beta 测试版本,该版本修复了超过 50 个的问题以及带来一些新特性。 2011年11月-04日
jQuery
1.7正式版发布。 新版本包含了很多新的特征,特别提升了事件委派时的性能尤其是在IE7下。 新增及改进项: 1. 新的事件 APIs: .on() and .off(); 2. 提升了事件委派时的性能有了大幅度的提升,尤其是在IE7下; 3. 更好的在 IE 6/7/8 上支持 HTML5; 4. 切换动画更加直观; 5. 匿名模块定义 AWD 6.
jQuery
.Deferred 7.
jQuery
.isNumeric() 被删除的方法: event.layerX and event.layerY
jQuery
.isNaN() 2012年03月24日
jQuery
1.7.2正式版发布。 该版本在1.7.1的基础上修复了大量的bug,并改进了部分功能。而相比于1.7.2 RC1,只修复了一个bug。值得注意的是:如果你正在使用
jQuery
Mobile,请使用最新的
jQuery
1.7.2和
jQuery
Mobile 1.1这两个版本,因为之前的
jQuery
Mobile版本还基于
jQuery
core 1.7.1或更早的版本。 编辑本段1、新的事件.on() .off() 旧的 API(
jQuery
1.7之前) 新的 API(
jQuery
1.7) $(elems).bind(events, fn) $(elems).on(events, fn) $(elems).bind(events, { mydata: 42 }, fn) $(elems).on(events, { mydata: 42 }, fn) $(elems).unbind(events, fn) $(elems).off(events, fn) $(elems).delegate(events, selector, fn) $(elems).on(events, selector, fn) $(elems).undelegate(events, selector, fn) $(elems).off(events, selector, fn) $(selector).live(events, fn) $(document).on(events, selector, fn) $(selector).die(events, fn) $(document).off(events, selector, fn) 编辑本段3、动画的改进 在
jQuery
1.7版之前,如果你在完成前停止动画,它可以创建的情况下被动画的
元素
永远不会返回到其全尺寸,它基本上停留在高度,这是停止动画时。 我们记住的原始尺寸固定,动画开始之前,让他们以后可以使用。 这消除了一大烦恼,尤其是在使用一定的动画切换的。 编辑本段1.42版介绍 jQuer1.4.2版本修复了1.4版本的一些错误和优化了一些不错的改进,速度比1.4.1版本又提升 了一倍,该版本对性能做了一些改进,同时增加了一些api ( .delegate() and .undelegate(). ),右图是
JQuery
各个版本的性能比较:
jquery
1.42新特性: 加了两个新方法:.delegate() 和.undelegate(). 是对.live() and .die() 的补充. 这两个方法对特定的事件的起到简化。 范例: $("table").delegate("td", "hover", function(){ $(this).toggleClass("hover"); }); 等于使用 .live(): $("table").each(function(){ $("td", this).live("hover", function(){ $(this).toggleClass("hover"); }); }); 另外,以下代码中,.live() 基本上等同于 .delegate(). $(document).delegate("td", "hover", function(){ $(this).toggleClass("hover"); }); 变更 大量代码进行了重写, 提升了性能及修正了一些长期存在的问题。 提升性能 每次开发新的
jquery
版本,我们都努力去持续优化性能,以保证你能用到最高性能的javascript代码。 在Taskspeed benchmark 的测试中,1.4.2比1.4.1快1倍,比1.3.2快2倍。 主要是在下面4个方面进行了提升: .bind() 和 .unbind(). .empty(), .remove(), 和 .html(). 插入单个DOM 节点到 document. $("body") 在测试用例中,比较多的用到了 $("body"), .bind(), .unbind()方法,因此测试结果提升比较明显。 v重写事件 event handlers 不再作为一个对象属性保存在
jQuery
的内部对象里。现在是保存在一个内部的对象数组里。v 现在可以通过调用.data("events") , 将会返回一个对象包含的所有事件类型。 现在可以使用不同的数据、命名空间、事件类型绑定在同一个handler 在一个handler清除自己之后,事件handler会继续执行 不用关联数据或者命名空间到事件handler 不用再使用代理方法 事件执行的顺序在所有浏览器中得到保证,Google Chrome 中出现的对象循环逻辑问题已经得到解决. 编辑本段
JQuery
插件 【基础】 a)
样式
很 多人会认为
样式
是个很复杂的东西,需要沉着冷静的心态加上非凡的审美观才能设计出赏心悦目的UI,抛开图片设计不说,其实css也就是那么些属 性:position,margin,padding,width,height,left,top,float,border,background… UI设计的漂亮与否在很大程度上依赖于设计人员对配色的把握和整体效果的协调。 b)脚本 我们同样需要对javascript有着深刻的理解,对dom, xhr, Regex, call-apply, prototype等都应该有一定的了解。 有人会说要这些有啥用啊,对dom的操作其实通过getElementById, getElementsByTagName以及其他的API都可以轻松的完成,这话是没错,当思路确定后,思想才是重点,一段代码是精华还是糟粕很容易就 可以区分出来,究其原因还是取决你自己 【实践】
jQuery
开发或使用,更多的灵感是来自实践,而不是copy||paste(奉行拿来主义的同学可以离开了)。 那么在这里我会用一个简单的例子来阐述
jQuery
插件开发的流程,能否举一反三就看各位看官了。 【目的】 开发一个插件之前我们需要对自己的目的有一个清醒的认识,有很明确的方向感,那么此次我作为示例插件的目的,就是呈现一个用于UI的Slider – 滑动条,常年从事于或暂时专注于win32开发的同学应该比较了解。 【草图】 真正动手编码之前我们还需要有一个草图来描述自己插件的“长相”(事件驱动或API封装的可以忽略)。 很多的同学在做UI开发前往往会忙于搜集各种小图片(非精通ps或iconworkshop人士),其实漂亮的图标的确可以美化我们的UI,不过我一般的处理方式是编写易于扩展的css,前期的UI呈现尽量少使用图片,多用线条完成。 【编码】 开发
jQuery
UI/Effect 插件在很多时候都需要与UI交互,因此在呈现上需要提供Html tree来绘制我们的插件,最终通过js dom来输出,那么在绘制简单的dom结构的时候我会直接用js来完成,不过如果嵌套比较复杂的话,我们还是应该先用html来完成,然后转变成js输 出。 【扩展】 有的时候用户却不是那么容易满足,于是有人高呼:“我要自己设置value,为什么不提供这个功能?”。 那么这时我们就需要为用户公开一个方法,用于设置jSlider的value,首先考虑的是作为方法需要一个作用对象(jSlider),那么此时我又不 想将作用对象作为参数传入,那么我们还是将这个方法作为插件来开发,我们将方法命名为setSliderValue,开放2个参数,v(value值)和 callback(设置完成后的回调函数)。 【插件】 其实网上已经有成百上千种插件了,应该可以满足大家的需求了。 【小结】 通篇到这里就结束了,简单的介绍了一款
jQuery
插件的开发流程,以及开发中应该注意的细节,那么在下一篇的文章中我会向大家介绍如何打造一个通用型的 自动完成 插件。 编辑本段让Dreamweaver支持提示代码功能 要让Dreamweaver支持
jQuery
自动提示代码功能,方法很简单,下载一个插件—
jQuery
_API.mxp,以及cs4的
jQuery
语法提示插件 (详细步骤见参考资料 [1])。 在Dreamweaver里依次选择“命令” -> “扩展管理” -> “安装扩展” -> …,就会自动安装了。 成功后重启Dreamweaver,就大功告成了。 编辑本段引入
JQuery
在head标签内加入这个 [removed][removed] 这里的src是你的
jQuery
库文件的位置,可以到
jquery
官网下载。 这样就引入了
jquery
,就可以使用了。在代码中,遇到$一般就表示用了
jquery
。为什么要说一般呢?因为除了
jquery
,javascript还有一个库,用的也是$符(property库)。
jquery
也给出了在遇到这种情况的解决办法,所以
jquery
是个很强大、开放、友好的js库。 下面举例: [removed] $(document).ready(function(){ //write your code here }) [removed] 上面代码中$(document).ready(function()中的$就是
jquery
的简写,可以用
jquery
代替。这个ready函数是在DOM就绪后发生,他比传统的javascript方法更合理。
jquery
在选取节点方面非常强大,
jquery
有一系列的选择器可供使用,非常简洁、高效。 基本选择器(3种): $("标签名"),如$("p")是选取了所有的p标签节点 $("#id名"),如$("#test")是选取了id为test的标签节点 $(".class名"),如$(".test")是选取了所有class为test的标签节点 上面的$("标签名")和$(".class名")返回的都是所有满足的节点,至于进一步筛选可以添加一些函数,如eq,gt,lt等等。 当然,
jquery
还有很多选择器
Jquery
获取
某个
样式
除
第一个
以外的
元素
:not(:first) 非
第一个
原色 :not(.test) 非$('.test')以外的
元素
Jquery
遍历
元素
在讲这个之前,建议先看一下
jquery
的隐式迭代,这个就不多说了,隐式迭代的缺点在于它只能集体进行操作不能只针对某个
元素
进行操作,可以看下面的代码: 如果想要依次对遍历的
元素
进行操作需要用each方法,语法是:$('div').each(function(index,domEle){})1.each()方法遍历匹配每一个
元素
。2.里面的回调函数有两个参数分别是index和domEle,index是每个
元素
的索引号,domEle是每个DOM
元素
对象,不是
jquery
对象,所以如果要用
jquery
的方法必须
jquery
选择器,多个
元素
+除首个
元素
+出去首尾
元素
1
jquery
如何用eq选择多个
元素
2 3 $('li:eq(0), li:eq(4)').css({color:"red"}); 4 5 6 7
jquery
如何
获取
某个
样式
的的 除了
第一个
之外
的所有
元素
呢: 8 9 :not(:first) 10 11 12 13 选择不是
第一个
,且不是最后一个所有的所有li: 14...
JavaScript
87,910
社区成员
224,616
社区内容
发帖
与我相关
我的任务
JavaScript
Web 开发 JavaScript
复制链接
扫一扫
分享
社区描述
Web 开发 JavaScript
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章