gpt4 book ai didi

javascript - 如何将 div 放置在具有绝对位置的元素旁边?

转载 作者:太空宇宙 更新时间:2023-11-04 04:37:46 25 4
gpt4 key购买 nike

我正在尝试创建一个 div,只要用户将鼠标悬停在链接上,它就可以附加到一个元素上

我有很多链接,我的代码如下所示。

for 循环 创建多个链接

codes....

link.href='#';
link.innerHTML = 'test'
link.onmouseover = OnHover;

codes....


function OnHover(){
var position;
var div = document.createElement('div');
div.className='testdiv';
div.innerHTML = 'test';

position=$(div).position();

div.style.top = position['top'] + 15 + 'px';
$(this).prepend(div);
}


link element1
link element2
----
| | //add new div when hover link element2
----
link element2
link element3



my css

.testdiv{
position:absolute;
}

每当用户将鼠标悬停在我的链接上并位于元素的 left top 上时,我想添加一个新的 div

我的代码会将所有 div 放在顶部而不是每个元素。

有没有办法做到这一点?非常感谢!

最佳答案

在没有看到您的其他 JavaScript/标记的情况下,我可以做出以下观察:

  • top 执行任何操作之前,您需要在新的 div 上设置 position:absolute
  • 您需要确保link 是非position:static
  • 像上面这样的非动态样式应该在您的 CSS 中,而不是 JS。
  • 定位绝对意味着您不需要使用 $(div).position()
  • 您混合使用了 jQuery 和纯 JavaScript,这看起来有点奇怪 :)

JS

function OnHover() {
var position;
var div = $('<div></div>');
div.addClass('testdiv');
div.html('test');
div.css('top', 15);
$(this).prepend(div);
}

CSS

.testdiv {
position:absolute;
}

a.testanchor {
position:relative;
}

关于javascript - 如何将 div 放置在具有绝对位置的元素旁边?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16026774/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com