javascript 获取节点自定义属性的值

JavaScript012

javascript 获取节点自定义属性的值,第1张

可以这样:

<span bb="123" onclick="aa(this.bb)">125</span>

js代码:

function aa(val){

alert(val) //就会输出 123

//在这里val 就是你所点击的span的bb值

}

  首先我们来介绍一下DOM中元素与节点间的关系:页面中所有内容都是节点[包括元素,属性,文本],所以节点是包括元素的。

  以下是节点的三个属性:

  若是火狐和chrome浏览器上述方法不存在兼容问题,而若是在IE8浏览器中后四组内容只能获取元素,无法获取文本或属性。即原获取节点方法-->取元素;原获取元素方法-->undefined。

  jQuery中是以方法的形式进行调用,同时都是用来获取元素:

先给你看下面两段代码:

<div id="div1">test!</div>

<script>

   console.log(document.getElementById("div1"))  //这个能够获得值

</script> <script>

   console.log(document.getElementById("div1"))  //这个不能获得值!

</script>

<div id="div1">test!</div>

看出原因没有?当js代码是先于html运行时,是获取不到DOM元素的!因为这时候该DOM元素尚未加载到内存,相当于不存在!

要想实现js代码放到任何位置都能获得DOM元素,就要保证代码在页面完全加载完毕后才开始运行,比如:

<script>

   window.onload=function(){  //网页完全加载完毕才会触发这个事件

      console.log(document.getElementById("div1")) //这时候就能获得了

   }

</script>

<div id="div1">test!</div>