ovm*_*vc4 5 html javascript css jquery
我有一个包含3个成员的jQuery对象:
var elements = $("#" + this.wrapperName + ">ul>li>a>img");
Object { 0: <img>, 1: <img>, 2: <img>, length: 3, prevObject: Object, context: HTMLDocument ? JSUmstellung, selector: "#newsdesk>ul>li>a>img" }
Run Code Online (Sandbox Code Playgroud)
我想更改每个CSS-Property,所以我做了这个:
elements.each(function(index, element) {
element.css({
"width": elemWidth,
"height": elemHeight,
"top": elemTop,
"left": elemLeft
});
}
Run Code Online (Sandbox Code Playgroud)
当我运行此代码时,我只是得到以下错误:
TypeError:element.css不是函数
我究竟做错了什么?我是否必须以其他方式访问我的元素?
提前致谢!
Dav*_*mas 18
问题是这element是一个DOM节点,无法访问jQuery方法,你需要使用的是:$(this)或者$(element):
elements.each(function(index, element) {
$(this).css({
"width": elemWidth,
"height": elemHeight,
"top": elemTop,
"left": elemLeft
});
}
Run Code Online (Sandbox Code Playgroud)
要么:
elements.each(function(index, element) {
$(element).css({
"width": elemWidth,
"height": elemHeight,
"top": elemTop,
"left": elemLeft
});
}
Run Code Online (Sandbox Code Playgroud)
或者你可以使用cssText(如果你真的想使用DOM节点):
elements.each(function(index, element) {
element.style.cssText = 'width: ' + elemWidth + '; height: ' + elemHeight + ' top: ' + elemTop + '; left: ' + elemLeft;
}
Run Code Online (Sandbox Code Playgroud)
请记住,内部each(function (index, element){ ... }); element与this(与推论$(this)相同$(element))完全相同.我根本不确定使用它的好处是什么element.