以前一直认为jq的$(“#id”)与js中的document.getElementById(“id”) 是等价的,然后前面刚好写了一个图片轮播的效果,里面js里 刚开始是直接用id名来表示的,但这样的缺点是,直接用id名 定义的是一个全局变量了,如果在大项目中会污染全局变量,所以我打算定义个局部变量来代替 刚开始是直接写了
var demo=$(
"#demo");
当这样定义之后,效果就出不来了 但用:
var demo =
document.getElementById(
"demo" );
效果可以出来。 突然发现原来$(“#demo”) 与document.getElementById( “demo” )是有区别的 $(“#demo”)是jquary对象,他实际是一个数组对象 document.getElementById( “demo” ) ,它是一个DOM对象 ,可进行DOM操作。
如果要用jq来实现DOM对象的话,需要加个下标 如:
var demo=$(
"#demo")[
0];
这样与document.getElementById( “demo” ) 效果就一样了