我在这里遇到一些问题。
我已经创建了一个数组,我想放置我的ID,但是当我使用这段代码时,结果不是我所期待的,我不知道为什么:
var ids = ['#biography', '#videogallery', '#pubblications', '#contacts', '#resume'];
console.debug(ids);
var currentElem = "";
$(window).load(function () {
var vWidth = $(window).width();
var vHeight = $(window).height();
$(ids).each(function() {
var currentElem = $(this);
console.debug(currentElem)
$(currentElem).css('width', vWidth).css('height', vHeight);
})
});
基本上我想要的是仅为特定ID设置高度和宽度,但each
的结果是这样的:
"#", "b", "i", "o", "g", "r", "a", "p", "h", "y", jquery: "2.1.3", constructor: function, selector: "", toArray: function, get: function…]0: "#"1: "b"2: "i"3: "o"4: "g"5: "r"6: "a"7: "p"8: "h"9: "y"length: 10__proto__: te[0]
为什么呢?我该如何解决这个问题?提前谢谢
答案 0 :(得分:2)
将数组转换为jQuery选择器:
更改:
$(ids)
到
$(ids.join()) // returns $('#biography, #videogallery, ..., #resume ')
答案 1 :(得分:1)
由于ids
是一个数组,您可以使用jQuery.each()
通用迭代器函数,可用于无缝迭代对象和数组。
使用
$.each(ids, function( index, value ) {
var currentElem = $(value);
console.debug(currentElem)
$(currentElem).css('width', vWidth).css('height', vHeight);
});