账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    《JS DOM编程艺术》第二版第六章的例子,为什么照着书上的写会出错?
    60
    0

    JS代码部分:

    <script>
                function prepareGallery()
                {
                    if(!document.getElementById("gallery"))return false;
                    if(!document.getElementsByTagName)return false;
                    var gallery=document.getElementById("gallery");
                    var links=gallery.getElementsByTagName("a");
                    for(i=0;i<links.length;i++)
                    {
                        links[i].onclick=function()
                        {
                            showpic(this);
                            return false;
                        }
                    }
                }
                
                function showpic(x)
                {
                    var changepic=document.getElementById("placeholder");
                    var source=x.getAttribute("href");
                    changepic.setAttribute("src",source);
                    var description=document.getElementById("description");
                    var text=x.firstChild.nodeValue;
                    description.firstChild.nodeValue=text;
                }
            </script>

    HTML部分:

    <h1>标题</h1>
            <ul id="gallery">
                <li>
                    <a href="img/摆渡.jpg" title="摆渡人" >摆渡人</a> 
                </li>
                <li>
                    <a href="img/城市.png" title="洛阳城" >洛阳城</a>
                </li>
                <li>
                    <a href="img/守卫.jpg" title="地狱口" >地狱口</a>
                </li>
                <li>
                    <a href="img/海怪.jpg" title="海上龙" >海上龙</a>
                </li>
            </ul>
            <p id="description">选择一张图片</p>
            <img id="placeholder" src="img/透明.png" alt="占位图"/>

    该例是要实现点击链接,在当前页面打开图片。然而按照书上的代码写完后,变成了在新页面打开图片。
    请问错误在哪里?
    多谢多谢多谢回答O(∩_∩)O

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 飞逝的流水 普通会员 1楼

      在编写《JavaScript DOM编程艺术》第二版第六章的例子时,照着书上的写可能会出现错误,原因可能有以下几个:

      1. 未处理兼容性问题:书中的例子代码可能不适用于所有浏览器。例如,书中使用了document.getElementById()方法,但是浏览器的不兼容性可能会导致问题。在这种情况下,你可能需要检查你的代码以确保它在所有浏览器中都能正常工作。

      2. 错误的语法或函数:书中的例子可能没有正确地使用DOM相关的语法或函数。例如,书中的document.getElementById()方法可能在某些情况下返回null或undefined,这可能会导致问题。在这种情况下,你需要检查你的代码以确保它在所有浏览器中都能正常工作。

      3. 未处理跨域问题:书中的例子可能没有正确地处理跨域问题。例如,书中的window.location.href属性可能会导致问题,因为它默认地在服务器端路由。在这种情况下,你需要检查你的代码以确保它在所有浏览器中都能正常工作。

      4. 错误的事件处理:书中的例子可能没有正确地处理事件处理。例如,书中的document.getElementById()方法可能没有正确地处理点击事件。在这种情况下,你需要检查你的代码以确保它在所有浏览器中都能正常工作。

      5. 错误的属性值:书中的例子可能没有正确地处理属性值。例如,书中的document.getElementById()方法可能没有正确地获取元素的属性。在这种情况下,你需要检查你的代码以确保它在所有浏览器中都能正常工作。

      总的来说,编写JavaScript代码时,你需要检查你的代码以确保它在所有浏览器中都能正常工作,并且要遵循DOM编程的最佳实践。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部