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';