Cas*_*son 95 javascript prototypejs
有没有办法在JavaScript中测试元素的类型?
答案可能需要也可能不需要原型库,但是以下设置确实使用了库.
function(event) {
var element = event.element();
// if the element is an anchor
...
// if the element is a td
...
}
Run Code Online (Sandbox Code Playgroud)
Fly*_*wat 121
您可以使用typeof(N)获取实际的对象类型,但您要做的是检查标记,而不是DOM元素的类型.
在这种情况下,请使用elem.tagName或elem.nodeName属性.
如果你想要真正有创意,你可以使用标记名字典和匿名闭包,如果是开关或if/else.
bob*_*olt 65
if (element.nodeName == "A")
{
}
else if (element.nodeName == "TD")
{
}
Run Code Online (Sandbox Code Playgroud)
roe*_*ing 19
也许您还必须检查节点类型:
if(element.nodeType == 1){//element of type html-object/tag
if(element.tagName=="a"){
//this is an a-element
}
if(element.tagName=="div"){
//this is a div-element
}
}
Run Code Online (Sandbox Code Playgroud)
编辑:更正了nodeType-value
roenving是正确的但是您需要将测试更改为:
if(element.nodeType == 1) {
//code
}
因为nodeType为3实际上是文本节点,nodeType为1是HTML元素.请参阅http://www.w3schools.com/Dom/dom_nodetype.asp
| 归档时间: |
|
| 查看次数: |
119854 次 |
| 最近记录: |