Javascript onclick更改id img

时间:2012-08-10 22:49:56

标签: javascript html function

我试图让它如果您选择其中一个id为'defaultone'或'defaulttwo'的图像,那么ID为'actualone'的图像将更改为该图像。我知道我很亲密,但我在某个地方有一个小错误。有人可以帮帮我吗?

        <script type="text/javascript">
        // Popup window code
        function newPopup(url) {
            popupWindow = window.open(url,'popUpWindow','height=450,width=600,left=10,top=10,resizable=no,scrollbars=yes,toolbar=yes,menubar=no,location=no,directories=no,status=yes')
        }
        function bigimg(x) {
            x.style.height="65px";
            x.style.width="85px";
            x.style.opacity="0.5";
        }
        function defaultimg(x) {
            x.style.height="60px";
            x.style.width="80px";
        }
        function teamback(x) {
            document.getElementById("x").src = document.getElementById("defaultone").src;
        }
        </script>

    </head>
        <body>
            Your Team <img id="defaultone" onmouseover="bigimg(this)" onclick="teamback(this)" onmouseout="defaultimg(this)" src="cowboys.gif"> vs <img id="defaulttwo" onmouseover="bigimg(this)" onclick="teamback(this)" onmouseout="defaultimg(this)" src="giants.gif"><img src="" id="actualone" style="width:85px; height:65px;"><br><br>
            <img src="colts.gif"> vs <img src="bears.gif">
        </body>
</html>

4 个答案:

答案 0 :(得分:3)

在JavaScript方法teamover()中,您使用document.getElementById("x")错误地引用了发送元素;元素"x"不存在。

尝试更新:

function teamback(x) {
    // update the "actualone" image's source to the sending-image's source
    document.getElementById("actualone").src = x.src;
}

答案 1 :(得分:2)

使用jQuery(您已经包含在HTML文档的头部中):

<script type="text/javascript">
    $(document).ready(function(){
        // For both
        $('#defaultone, #defaulttwo').click(function(){
            $('#actualone').attr('src', $(this).attr('src'));
        });
    });
</script>

重写以使用一个功能。

答案 2 :(得分:0)

应该如下

function teamback(x) {
    x.src = document.getElementById("defaultone").src; // To change the x element's src to defaultone's src
}

因为您使用this传递元素本身而不是它的id。

答案 3 :(得分:0)

您似乎正在尝试访问此行的x

document.getElementById("x").src =

应该是:

x.src =

此外,onclick等中的代码后面应该有分号,例如

onclick="teamback(this);"