在jQuery参数中调用DOM

时间:2014-12-19 14:20:59

标签: javascript jquery dom

我还在学习jQuery,我正在创建一个非常简单的jQuery函数,它使用一个参数然后在参数中调用div。但它不起作用。我在控制台中没有收到任何错误。这是我的代码:

function square(oneDiv) {
    var divWidth = oneDiv.width();
    oneDiv.height(divWidth);
}

square($('.art'));

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:1)

有些事情可能会出错。

1)此代码运行时DOM可能不存在。对于这种情况,请将函数调用包装在$(document).ready中,以确保函数运行时.art存在:

function square(oneDiv) {
  var divWidth = oneDiv.width();
  oneDiv.height(divWidth);
}

$(document).ready(function () {
  square($('.art'));
});

2).art元素可能具有display: inline样式。确保它是display: blockdisplay: inline-block。内联元素的高度和宽度样式将被忽略。

示例:http://jsfiddle.net/o3dqzgno/

答案 1 :(得分:0)

试试这个。还要确保在dom

中加载了带有class ='art'元素的元素后加载了查询代码
function square(oneDiv) {
    var myDiv = $(oneDiv);
    var divWidth = myDiv.css('width');
    myDiv.css('height', divWidth);
}

square('.art');