隐藏

javascript中获取class

发布:2024/12/23 21:05:24作者:管理员 来源:本站 浏览次数:119



js中没有获取class的办法,找了一些封装好的方法,这里整理一下


(1)先进行封装



//封装getClass

          function getClass(tagName,className) //获得标签名为tagName,类名className的元素

           {

               if(document.getElementsByClassName) //支持这个函数

               {        return document.getElementsByClassName(className);

               }

               else

               {       var tags=document.getElementsByTagName(tagName);//获取标签

                   var tagArr=[];//用于返回类名为className的元素

                   for(var i=0;i < tags.length; i++)

                   {

                       if(tags[i].class == className)

                       {

                           tagArr[tagArr.length] = tags[i];//保存满足条件的元素

                       }

                   }

                   return tagArr;

               }

           }




(2)主体程序


<ul>

   <li class="dicTap">1</li>

   <li class="dicTap">2</li>

   <li class="dicTap">3</li>

   <li class="dicTap">4</li>

</ul>              




(3)获取class为dicTap的所有li内容程序

复制代码


window.onload = function()

{   var topMenus = getClass('li','dicTap');

   for(var i=0;i < topMenus.length; i++)

   {

       alert(topMenus[i].innerHTML);        

   }


}


复制代码




(4)项目中实际应用

//点击的   自定义属性personid,打开详情页面并且进行跨页面传值

           var dicTap = getClass('li','dicTap');

               for(var i=0;i <dicTap.length; i++)

               {

                   dicTap[i].addEventListener('tap',function(){

                       var personId=this.getAttribute("personid");

                       localStorage.a=personId;

                       mui.openWindow({

                       url: 'disciplineDetail.html',

                       id:'disciplineDetail'

                       });

                   })

               }


           //封装getClass

          function getClass(tagName,className) //获得标签名为tagName,类名className的元素

           {

               if(document.getElementsByClassName) //支持这个函数

               {        return document.getElementsByClassName(className);

               }

               else

               {       var tags=document.getElementsByTagName(tagName);//获取标签

                   var tagArr=[];//用于返回类名为className的元素

                   for(var i=0;i < tags.length; i++)

                   {

                       if(tags[i].class == className)

                       {

                           tagArr[tagArr.length] = tags[i];//保存满足条件的元素

                       }

                   }

                   return tagArr;

               }

           }