Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/372.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么';让我来做这个_Javascript_Jquery - Fatal编程技术网

Javascript 为什么';让我来做这个

Javascript 为什么';让我来做这个,javascript,jquery,Javascript,Jquery,工作 但是 不$(“#main”)返回jQuery对象,而不是HtmleElement,因此没有在jQuery对象上定义src属性。你会发现这很有用 $('#main').src = '02.jpg'; Mike展示了一种设置src属性的方法(他展示的方法可能被认为是最像jQuery的方法)。还有其他几种方法 $("#main").attr("src", "02.jpg"); 或 $('#main').src='02.jpg' 从$(…)获得的jQuery包装器不会复制它所包装的DOM对象的

工作

但是

$(“#main”)
返回jQuery对象,而不是HtmleElement,因此没有在jQuery对象上定义
src
属性。你会发现这很有用

$('#main').src = '02.jpg';
Mike展示了一种设置
src
属性的方法(他展示的方法可能被认为是最像jQuery的方法)。还有其他几种方法

$("#main").attr("src", "02.jpg");

$('#main').src='02.jpg'

从$(…)获得的jQuery包装器不会复制它所包装的DOM对象的所有属性和方法。必须在包装器对象上使用jQuery特定的方法:在本例中,Mike详细介绍了
attr

与jQuery相比,“原型”库增加了现有DOM对象,而不是包装它们。因此,除了新的方法和属性外,您还可以获得旧的方法和属性,如
.src
。这两种方法都有优点和缺点。

$(“#main”)
是搜索中匹配项的集合
document.getElementById(“main”)
是一个单独的DOM元素,它具有
src
属性。使用
attr(x,y)
方法来设置集合中由
$(x)
返回的所有元素的某些属性,即使该元素只是
getElementById(x)
中的单个元素


这类似于
int
int[]
之间的区别-非常不同

除了返回一个对象外,您还可以将该对象视为一个数组(如本答案所示),并将其作为数组引用。公开DOM对象是否会直接增加浏览器兼容性问题的风险?我假设通过使用JQuery方法,例如.attr(),我们可以更轻松地在所有浏览器上运行它;这样的事是不可能的,真的
attr
对特定的角点情况有一些修正,但除此之外,它与使用DOM属性访问相同(仅使用稍微不同的属性名称来匹配属性名称;但是它没有实现属性访问)。当然,使用
attr
,您仍然会遇到浏览器兼容性问题。
$("#main").attr("src", "02.jpg");
$("#main")[0].src = '02.jpg';
$("#main").get(0).src = '02.jpg';