鱼C论坛

 找回密码
 立即注册
查看: 4335|回复: 2

[已解决]dom节点问题

[复制链接]
发表于 2017-5-15 23:42:41 | 显示全部楼层 |阅读模式
5鱼币
<!doctype html>
<html lang="en">
<head>
        <meta charset="UTF-8" />
        <title></title>
        <style type="text/css">

        </style>
        <script type="text/javascript">
                window.onload = function()
                {
                        function styleHeaderSibings(){
                                if(!document.getElementsByTagName)
                                {
                                        return false;
                                }
                                var headers = document.getElementsByTagName("h1");
                                var elem;
                                
                                for(var i = 0; i < headers.length; i++)
                                {
                                        elem = getNextElement(headers[i].nextSibling);
                                        
                                        elem.style.fontWeight = "bold";
                                        elem.style.fontSize = "40px";
                                        elem.style.color = "red";
                                }
                        }
                }
                
                function getNextElement(node)
                {
                        if(node.nodeType == 1)
                        {
                                return node;
                        }
                        
                        if(node.nextSibling)
                        {
                                return getNextElement(node.nextSilbing);
                        }
                        return null;
                }
        </script>
</head>
<body>
        <h1>a</h1>
        <h1>b</h1>
        <h1>c</h1>
        <h1>d</h1>
</body>
</html>


设置了字体等没反应F12也没错,  求救 ==   
最佳答案
2017-5-15 23:42:42
本帖最后由 不二如是 于 2017-5-17 22:35 编辑

先抛开,DOM树遍历方法正确与否不说。。。

居然要对<h1>这中内置好样式的标签修改大小,就很尴尬了!

建议换成<p>标签,然后放在一个div里

在利用便利一个,id为xxx的div下所有子节点的办法,修改<p>样式



<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8" />
    <title></title>
    <style type="text/css">

    </style>
    <script type="text/javascript">
        var adiv=document.querySelectorAll("#d1 p");
for(i=0;i<adiv.length;i++){
    adiv[i].style.color="red";
    adiv[i].style.fontSize="55px";
}
    </script>
</head>
<body>
<div id="try">
<p>a</p>
<p>b</p>
<p>c</p>
<p>d</p>
<p>e</p>
</div>

</body>
</html>

最佳答案

查看完整内容

先抛开,DOM树遍历方法正确与否不说。。。 居然要对这中内置好样式的标签修改大小,就很尴尬了! 建议换成标签,然后放在一个div里 在利用便利一个,id为xxx的div下所有子节点的办法,修改样式 [hr]
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-5-15 23:42:42 | 显示全部楼层    本楼为最佳答案   
本帖最后由 不二如是 于 2017-5-17 22:35 编辑

先抛开,DOM树遍历方法正确与否不说。。。

居然要对<h1>这中内置好样式的标签修改大小,就很尴尬了!

建议换成<p>标签,然后放在一个div里

在利用便利一个,id为xxx的div下所有子节点的办法,修改<p>样式



<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8" />
    <title></title>
    <style type="text/css">

    </style>
    <script type="text/javascript">
        var adiv=document.querySelectorAll("#d1 p");
for(i=0;i<adiv.length;i++){
    adiv[i].style.color="red";
    adiv[i].style.fontSize="55px";
}
    </script>
</head>
<body>
<div id="try">
<p>a</p>
<p>b</p>
<p>c</p>
<p>d</p>
<p>e</p>
</div>

</body>
</html>

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-5-16 14:28:39 | 显示全部楼层
火狐不支持getElementsByTagName这个语句所以也没法调试
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-22 12:56

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表