在DOM上使用JavaScript定位Divs

在DOM上使用JavaScript定位Divs

我有以下代码:

function contextMenu() {

    var menu = document.createElement("div");
    menu.innerHTML = "MY MENU";
    menu.style.position = 'absolute';
    menu.style.left = tempX;
    menu.style.top = tempY;
    document.body.appendChild(menu);

}


// Generic script to get cursor coordinates
var IE = document.all?true:false

if (!IE) document.captureEvents(Event.MOUSEMOVE)

document.onmousemove = getMouseXY;

var tempX = 0
var tempY = 0

function getMouseXY(e) {
    if (IE) {
        tempX = event.clientX + document.body.scrollLeft
        tempY = event.clientY + document.body.scrollTop
    } else {
        tempX = e.pageX
        tempY = e.pageY
    }

    if (tempX < 0){tempX = 0}
    if (tempY < 0){tempY = 0}

    document.Show.MouseX.value = tempX
    document.Show.MouseY.value = tempY
    return true
}


目的是在光标所在的位置创建一个div元素。它确实创建了一个div元素并设置了innerHTMLposition: absolute,但是没有设置lefttop属性。

我创建了一个警报框来检查tempXtempY的值,它们是整数。

有什么想法吗?

最佳答案

lefttop的样式值需要单位以及值,而不仅仅是数字值,否则浏览器将忽略对其进行设置

尝试:

menu.style.left = tempX + 'px';
menu.style.top = tempY + 'px';

关于javascript - 在DOM上使用JavaScript定位Divs,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28708327/

10-12 07:08