如果我没有声明<div>
属性,如何访问任何id
。 DOM是否自己创建ID?
e.g。
<div class="common_class" onmouseover="know_your_div(this)">
</div>
<script type="text/script">
function know_your_div(obj){
/*
Here i want to access the div object not by class because of it's common
for all div
*/
}
</script>
答案 0 :(得分:4)
嗯,您的问题的答案就在您的代码中。
obj
功能所需的know_your_div
参数在this
属性中以onmouseover
的形式提供。因此,这是您的div
。
答案 1 :(得分:3)
在所有浏览器中都没有简单的方法。最好的办法就是在上面创建一个ID。有没有理由你不能?
除此之外,你必须使用DOM遍历方法导航到它,如果你的DOM结构发生了变化,那么这些方法非常不稳定。代码如:
document.body.childNodes[3].childNodes[2].childNodes[4];
或
document.getElementsByTagName('DIV')[22]; // 23rd DIV in the page
等...
答案 2 :(得分:0)
然后我猜你需要在类名旁边明确指定ID .DOM不会自己创建ID ......
答案 3 :(得分:0)
然后是时候使用DOM了。也许你可以使用诸如firstChild,lastChild,nextSibling ...... http://de.selfhtml.org/javascript/objekte/node.htm
之类的东西如果你正在使用一个JS库,比如我推荐的MooTools或jQuery,那么你手上就会有很多强大的选择器魔法(例如http://mootools.net/demos/?demo=Slick.Finder)。
答案 4 :(得分:0)
为什么不使用JQuery和选择器? http://api.jquery.com/id-selector/
答案 5 :(得分:0)
不,DOM不会创建ID。您需要添加ID。您可以使用jQuery通过它的类来访问div。
答案 6 :(得分:0)
答案在你的问题中,让我试着帮助你
<div class="common_class" onmouseover="know_your_div(this)"> </div>
var oldObject = "";
function know_your_div(obj) {
// write ur condition if/ese/while/..
obj.parentNode.do_Something(); OR obj.parentNode.ID/Class/value
oldObject = obj;
}