我正在尝试为我的svg元素获取clientWidth和clientHeight。根据本教程https://bl.ocks.org/curran/3a68b0c81991e2e94b19,我对此代码进行了更改。
let w = $('.graph');
let clientWidth = w.clientWidth;
let clientHeight = w.clientHeight;
console.log('CW is ' + clientWidth);
console.log('CH is ' + clientHeight);
当我调试时,我有一个clientWidth和clientHeight值。我不确定为什么我得到一个未定义的值。有人可以帮助我为什么会发生这种情况。Dev tools result
答案 0 :(得分:1)
$('.graph')
返回一个jQuery集合,该集合没有clientWidth
属性或 clientWidth()
方法。
我不认为jQuery有一个等同于clientWidth
和clientHeight
的方法。但假设您只有一个图元素,则可以通过使用[0]
直接访问DOM节点来获取这些属性:
let w = $('.graph')[0]; //added [0]
let clientWidth = w.clientWidth;
let clientHeight = w.clientHeight;
console.log('CW is ' + clientWidth);
console.log('CH is ' + clientHeight);
答案 1 :(得分:0)
let w = $('.graph');
let clientWidth = w.clientWidth();
let clientHeight = w.clientHeight();
console.log('CW is ' + clientWidth);
console.log('CH is ' + clientHeight);
在函数末尾添加“()”(x.clientWidth(),x.clientHeight())。
答案 2 :(得分:0)
var a={data:'hai',value:'hi'};
function clickMe(){
alert(a.data);
}
function undifined(){
alert(a.hai)
}
<button onClick="clickMe()">click me</button>
<button onClick="undifined()">click Me Undefined</button>