我能';在javascript中无法获取div的宽度
我的代码将div定位在鼠标当时所在的位置,如果div太靠近页面的右侧,则应该将div向左移动与其宽度相同的量。但我似乎无法获得div的宽度。以下是我的代码:我能';在javascript中无法获取div的宽度,javascript,Javascript,我的代码将div定位在鼠标当时所在的位置,如果div太靠近页面的右侧,则应该将div向左移动与其宽度相同的量。但我似乎无法获得div的宽度。以下是我的代码: function position(e) { document.getElementById(tt).style.visibility = "visible"; if (document.body && document.body.offsetWidth) { var winW = document.body
function position(e) {
document.getElementById(tt).style.visibility = "visible";
if (document.body && document.body.offsetWidth) {
var winW = document.body.offsetWidth;
var winH = document.body.offsetHeight;
}
if (e.pageX || e.pageY) {
l = e.pageX;
u = e.pageY;
} else if (e.clientX || e.clientY) {
l = e.clientX + document.body.scrollLeft + document.documentElement.scrollLeft;
u = e.clientY + document.body.scrollTop + document.documentElement.scrollTop;
}
var divL = document.getElementById(tt).style.width;
if ((winW - l) <= 320) {
l = l - divL;
}
document.getElementById(tt).style.top = (u + 10) + 'px';
document.getElementById(tt).style.left = (l + 10) + 'px';
}
功能位置(e){
document.getElementById(tt.style.visibility=“可见”;
if(document.body&&document.body.offsetWidth){
var winW=document.body.offsetWidth;
var winH=document.body.offsetHeight;
}
如果(e.pageX | e.pageY){
l=e.pageX;
u=e.pageY;
}else if(e.clientX | e.clientY){
l=e.clientX+document.body.scrollLeft+document.documentElement.scrollLeft;
u=e.clientY+document.body.scrollTop+document.documentElement.scrollTop;
}
var divL=document.getElementById(tt).style.width;
如果((winW-l)哪一行给出了您不期望的结果,那么该行上的期望值和实际返回值是多少?我认为是这个var divL=document.getElementById(tt).style.width;我认为这给了我一个空值。对于css,我只设置了一个max width,但是div中有一些东西,所以它应该有一个宽度,对吗?如果tt不是在更大范围内声明的变量,那么您的问题就不是在它周围使用引号。document.getElementById(tt).style.width
将只提供CSS定义的宽度。如果它不是预定义的,则会得到null。
var width = document.getElementById(tt).offsetWidth;