前端学习——选择结果为JQuery对象还是DOM对象?
- - CSDN博客Web前端推荐文章0.前言
在学习和使用javascript过程中经常使用JQuery的选择器,但是在获取到选择结果之后经常“犯迷糊”,需要一个DOM对象时或者一个JQuery对象,这样的尴尬经常遇到. 为了让自己不再迷糊通过博文总结经验教训,希望自己在总结过程中缓慢提高. 【 前端学习——如何修改url name 使用javascript和JQuery】.
<!DOCTYPE html> <meta charset="utf-8"> <html> <head> <!-- <script src="jquery.js"></script> --> <script src="http://libs.baidu.com/jquery/1.10.2/jquery.min.js"> </head> <body> <ul> <li>Raspberry</li> <li>Arduino</li> <li>Intel Galileo</li> </ul> </body> </html>
var $obj = $("li"); console.log($obj);
var obj = document.getElementsByTagName("li"); console.log(obj);
var obj = $("li")[0]; console.log(obj); // <li>Raspberry</li> console.log(obj.innerHTML); // Raspberry
var obj = $("li").get(1); console.log(obj); // <li>Arduino</li> console.log(obj.innerHTML); // Arduino
var obj = document.getElementsByTagName("li")[2]; console.log(obj); // <li>Intel Galileo</li> console.log(obj.innerHTML); // Intel Galileo
var $obj = $("li").eq(0); console.log($obj); console.log($obj.html()); // Raspberry
$("li").each(function(index,item){ console.log(item); // item为DOM对象 console.log(item.innerHTML); // 依次输出 Raspberry Arduino Intel Galileo });
$("li").each(function(index,item){ $item = $(item); // 再次变为Jquery对象 // console.log($item); console.log($item.html()); // 依次输出 Raspberry Arduino Intel Galileo });
var objs = document.getElementsByTagName("li"); for(var i=0; i<objs.length; i++) { console.log(objs[i]); console.log(objs[i].innerHTML); // 依次输出 Raspberry Arduino Intel Galileo }
点击我
. 像上面这样把JavaSript代码和HTML代码混杂在一起的做法同样也非常不妥,因为它并没有将网页内容和行为分离,所以才有JQuery选择器的学习.点击我
. //给class为demo的元素添加行为.