我的页面上有两个div元素,它们的定位方式使得div与页面顶部的距离相同,但相隔一定的水平距离。这两个div元素都使用Javascript/jQuery动态地输入了一些文本。我想以这样一种方式访问两个div中的文本,以便当两个div包含相同(或匹配)的文本时我可以执行一些操作。有没有办法做到这一点的基础上使用Javascript/jQuery的div的位置?由于某些限制,我无法使用id的明显解决方案。根据窗口位置访问div元素的内容
回答
比方说,你想要的两个div是在100,100和100,300:
var all_divs = $("div");
var div1;
var div2;
for (var i=0; i<all_divs.length; i++){
var o = $(all_divs[i]).offset();
if (o.top == 100 && o.left == 100) {
div1 = all_divs[i];
}
if (o.top == 100 && o.left == 300) {
div2 = all_divs[i];
}
}
var polling = setInterval(function(){
if ($(div1).text() == $(div2).text()) {
perform_some_action();
clearInterval(polling);
}
}, 500);
这看起来很棒。但为什么setInterval? – Ronophobia 2013-04-21 17:52:28
This works great :) – Ronophobia 2013-04-21 18:39:44
你说DIVs的内容是动态更新的,所以我不确定你是否可以在更新时触发它,或者你只需要继续检查。如果在更新DIV时检查内容,则可能不需要'setInterval'。 – 2013-04-21 18:43:51
如果你想根据自己的位置使用,以确定您的div .offset()
我也在想这个。但我想知道它是否为所有浏览器提供了相同的结果。 – Ronophobia 2013-04-21 17:50:22
从我能看到的快速搜索...偏移应该适用于大多数浏览器。尽管IE通常如此,但可能会出现一些问题。研究一下,那里有很多解决方案。 – apaul 2013-04-22 02:28:58
- 1. 根据窗口大小更改位置的元素
- 2. 根据以前的内容调整HTML span元素的位置
- 3. 父div内元素的随机位置
- 4. 内容DIV位置
- 5. 根据内容动态更改div元素的高度
- 6. 中心元素DIV不带切断,左内容,如果元素比窗口
- 7. 从弹出窗口访问asp内容
- 8. 访问div元素
- 9. jQuery根据滚动位置更改div中的内容
- 10. (How)我可以访问qml元素的相对位置到主窗口
- 11. jquerymobile ios5在div中的定位元素[数据角色=内容
- 12. python:根据内容替换HTML元素
- 13. 根据滚动位置更改div内容
- 14. JavaScript:父窗口函数访问子窗口元素
- 15. 根据里面的内容设置p元素的高度
- 16. 根据其它矢量元素位置
- 17. 从jquery访问内容页面元素
- 18. 访问第i个元素,它位于ArrayList的元素内
- 19. 访问当前div外部的div内的元素
- 20. 根据元素名称更改元素内容XSLT
- 21. div相对于窗口的位置?
- 22. 根据滚动设置div的位置
- 23. colorbox内的访问元素
- 24. 根据其他单元格的位置返回单元格的内容
- 25. 锁定窗口顶部div位置
- 26. 根据其内容的div大小
- 27. 如何根据div元素的no元素在div元素内创建新的bullent图标?
- 28. 根据组中的位置设置元素的样式
- 29. 根据其内容定义窗口的大小
- 30. 位于DIV内部的元素
你可以为每个元素分配唯一的类吗? – 2013-04-21 17:38:25
每个div的独特类?我想我可以。我做完之后呢? – Ronophobia 2013-04-21 17:40:18
使用类 – 2013-04-21 17:40:42