ホームページ >ウェブフロントエンド >jsチュートリアル >jQuery がいくつかの一般的なメソッドを学習する_jquery
jQuery事件处理
ready(fn)
代码:
$(document).ready(function(){<br>// Your code here...<br>}); |
作用:它可以极大地提高web应用程序的响应速度。通过使用这个方法,可以在DOM载入就绪能够读取并操纵时立即调用你所绑定的函数,而99.99%的JavaScript函数都需要在那一刻执行。
bind(type,[data],fn)
代码:
$("p").bind("click", function(){<br>alert( $(this).text() );<br>}); |
作用:为每一个匹配元素的特定事件(像click)绑定一个事件处理器函数。起到事件监听的作用。
toggle(fn,fn)
代码:
$("td").toggle(<br>function () {<br>$(this).addClass("selected");<br>},<br>function () {<br>$(this).removeClass("selected");<br>}<br>); |
作用:每次点击时切换要调用的函数。如果点击了一个匹配的元素,则触发指定的第一个函数,当再次点击同一元素时,则触发指定的第二个函数。挺有趣的一个函数,在动态实现某些功能的时候可能会用到。(像click(),focus(),keydown()这样的事件这里就不提了,那些都是开发中比较常用到的。)
jQuery外观效果
addClass(class)和removeClass(class)
代码:
$(".stripe tr").mouseover(function(){ <br>$(this).addClass("over");}).mouseout(function(){ <br>$(this).removeClass("over");})<br>}); |
也可以写成:
$(".stripe tr").mouseover(function() { $(this).addClass("over") });<br>$(".stripe tr").mouseout(function() { $(this).removeClass("over") }); |
作用:为指定的元素添加或移除样式,从而实现动态的样式效果,上面的实例中实现鼠标移动双色表格的代码
css(name,value)
代码:
$("p").css("color","red"); |
作用:很简单,就是在匹配的元素中,设置一个样式属性的值。这个个人感觉和上面的addClass(class)有点类似。
slide(),hide(),fadeIn(), fadeout(), slideUp() ,slideDown()
代码:
$("#btnShow").bind("click",function(event){ $("#divMsg").show() });<br>$("#btnHide").bind("click",function(evnet){ $("#divMsg").hide() }); |
作用:jQuery中提供的比较常用的几个动态效果的函数。还可以添加参数:show(speed,[callback])以优雅的动画显示所有匹配的元素,并在显示完成后可选地触发一个回调函数。
animate(params[,duration[,easing[,callback]]])
作用:制作动画效果用到的函数,功能非常的强大,可以连续使用此函数。
查找筛选
map(callback)
HTML 代码:
<b>Values: </b> <p>< INPUT value=John name=name><br>< INPUT value=password name=password><br>< INPUT value="< A href=" name=url ? %22 ejohn.org http:>http://ejohn.org/%22/< /A> < FORM></p> |
jQuery 代码:
< /FORM> |
$("p").append( $("input").map(function(){<br>return $(this).val();<br>}).get().join(", ") ); |
结果:
[ John, password, < A href="http://ejohn.org/%3C/p">http://ejohn.org/%3C/p< /A>> ] |
作用:将一组元素转换成其他数组(不论是否是元素数组)你可以用这个函数来建立一个列表,不论是值、属性还是CSS样式,或者其他特别形式。这都可以用'$.map()'来方便的建立。
find(expr)
HTML 代码:
< SPAN>Hello< /SPAN>, how are you?<p></p>jQuery 代码: <p></p><p>$("p").find("span") <br>结果: </p><p>[ < SPAN>Hello< /SPAN> ]</p> |
作用:搜索所有与指定表达式匹配的元素。这个函数是找出正在处理的元素的后代元素的好方法。
文档处理
attr(key,value) |
< IMG>< IMG> |
$("img").attr("src","test.jpg"); |
作用:取得或设置匹配元素的属性值。通过这个方法可以方便地从第一个匹配元素中获取一个属性的值。如果元素没有相应属性,则返回 undefined 。在控制HTML标记上是必备的工具。
html()/html(val)
HTML 代码:
< DIV> <p>Hello</p>< /DIV><br> |
jQuery 代码:
$("div").html();
结果:
Hello
作用:取得或设置匹配元素的html内容,同类型的方法还有text()和val()。前者是取得所有匹配元素的内容。,后者是获得匹配元素的当前值。三者有相似的地方常用在内容的操作上。
<p>wrap(html) </p><p>HTML 代码: </p><p>Test Paragraph. </p><p>jQuery 代码: </p><p>$("p").wrap(" < DIV class=wrap>< /DIV>"); </p><p>结果: < DIV class=wrap> </p><p>Test Paragraph.</p> |
作用:把所有匹配的元素用其他元素的结构化标记包裹起来。这种包装对于在文档中插入额外的结构化标记最有用,而且它不会破坏原始文档的语义品质。 可以灵活的修改我们的DOM。
empty()
HTML 代码:
<p>Hello, <span>Person</span> < A href="http://www.jb51.net#">and person< /A></p> |
jQuery 代码:
$("p").empty();
结果:
作用:删除匹配的元素集合中所有的子节点。
Ajax处理
load(url,[data],[callback])
url (String) : 待装入 HTML 网页网址。
data (Map) : (可选) 发送至服务器的 key/value 数据。
callback (Callback) : (可选) 载入成功时回调函数。
代码:
$("#feeds").load("feeds.aspx", {limit: 25}, function(){<br>alert("The last 25 entries in the feed have been loaded");<br>}); |
作用:载入远程 HTML 文件代码并插入至 DOM 中。这也是Jquery操作Ajax最常用最有效的方法。
serialize()
HTML 代码:
Results:
< FORM><br>< SELECT name=single> < OPTION selected>Single< /OPTION> < OPTION>Single2< /OPTION> < /SELECT><br>< SELECT multiple name=multiple> < OPTION selected>Multiple< /OPTION> < OPTION>Multiple2< /OPTION> < OPTION selected>Multiple3< /OPTION> < /SELECT><br>< INPUT value=check1 type=checkbox name=check> check1<br>< INPUT value=check2 type=checkbox name=check <BR>checked="checked"/> check2<br>< INPUT value=radio1 type=radio name=radio <BR>checked="checked"/> radio1<br>< INPUT value=radio2 type=radio name=radio> radio2<br>< /FORM> |
jQuery 代码:
$("#results").append( "< TT>" + $("form").serialize() + "< /TT>" ); |
作用:序列化表格内容为字符串。用于 Ajax 请求。
工具
jQuery.each(obj,callback)
代码:
$.each( [0,1,2], function(i, n){<br>alert( "Item #" + i + ": " + n );<br>});//遍历数组<br>$.each( { name: "John", lang: "JS" }, function(i, n){<br>alert( "Name: " + i + ", Value: " + n );//遍历对象<br>}); |
作用:通用例遍方法,可用于例遍对象和数组。
jQuery.makeArray(obj)
HTML 代码:
First<p></p>< DIV>Second< /DIV> <div>Third< /DIV> < DIV>Fourth</div><div>< /DIV> </div> |
jQuery 代码:
var arr = jQuery.makeArray(document.getElementsByTagName("div")); |
結果:
4 番目
3 番目
2 番目
最初に
機能: 配列のようなオブジェクトを配列オブジェクトに変換します。配列とオブジェクトの間で柔軟に変換できるようになります。
jQuery.trim(str)
機能: これは誰もがよく知っているはずです。文字列の先頭と末尾のスペースを削除します。
要約: 実際の開発では、他のメソッドや属性を使用する可能性があります。上記は、初心者が初めて jQuery を学ぶときに習得する必要があると個人的に考えるメソッドの一部です。あくまで参考用です。何か問題がある場合は、お知らせください。