问答详情
源自:1-1 为什么学习JavaScript

如果不是ID而是class时怎么写

<p class="p3">如果不是ID而是class时怎么写</p>
document.getElByClass("p3").style.color="red";

是这样吗?

提问者:汪琳果儿 2016-07-02 22:21

个回答

  • 聆Q
    2016-07-03 15:07:58
    已采纳

    可以使用document.getElementsByTagName("p"),然后这个会返回一个标签类型为p的数组,然后获取其class为p3的标签,再进行设置。我写了一个你看看:

    <script type="text/javascript">
            var p3_content = document.getElementsByTagName("p");
            for(var i = 0;i<p3_content.length;i++){
                
                if(p3_content[i].getAttribute("class") == "p3")
                    p3_content[i].style.color ="#FB0505";
            }
    
        </script>


  • 当爱随风
    2016-07-03 14:31:13

    用一个getByClass()函数可以获取:

    function getByClass(oparent,oclassName){

        var oEles=oparent.getElementsByTagName('*');

        var oResult=[];

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

            if(oEles[i].className==oclassName){

                oResult.push(oEles[i]);

                }

        }

        return oResult

    }


    oparent,oclassName 两个变量参数分别是父元素的class,和你要取得class。

  • qq_就像一場雨_0
    2016-07-03 00:25:03

    可以先document.getElementsByTagName('*')获取所有的标签,然后通过循环判断标签的classname属性是不是和自己需要获取的类名相同。是的话就存进一个事先定义好的数组里面。

  • 慕粉3596357
    2016-07-02 22:33:41

    可以这样写,但是IE不支持。

  • 慕神4355813
    2016-07-02 22:31:02

    getElementsByClassName(),用这个,返回的是一个对象列表,即所有引用该类名的DOM对象,应该是这样的