javascript中获取class

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;
			    }
			}

  

 

个性签名:别低头,王冠会掉,别后退,梦想会碎~~~~~
原文地址:https://www.cnblogs.com/lily1010/p/5329028.html