鍍金池/ 問答/HTML/ 如何不讓圖片開新窗口?

如何不讓圖片開新窗口?

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
    <style>
    img{
        width:200px;
    }
    </style>
    <script>
    var n = 1;
    function changePic(m){
        return n = m;
    }

    function change(){
        var myImg = document.getElementsByTagName("img")[0];
        myImg.src = "images/0" + n + ".jpg";
        if(n<5)n++;
        else n=1;
    }
    
    </script>
</head>
<body onload="setInterval(change,1000);">
    <img src="images/01.jpg" alt="" width="200">
    <div>
        <a href="images/01.jpg" onclick="changePic(1)">屋檐</a>
        <a href="images/02.jpg" onclick="changePic(2)">旅游</a>
        <a href="images/03.jpg" onclick="changePic(3)">紅墻</a>
        <a href="images/04.jpg" onclick="changePic(4)">梅花</a>
        <a href="images/05.jpg" onclick="changePic(5)">宮殿</a>
    </div>
</body>
</html>

上面的代碼圖片可以輪播,每次點(diǎn)擊某個(gè)a的時(shí)候,會立即跳到那個(gè)圖片,但是有個(gè)問題,會打開一個(gè)新的窗口,在新窗口中顯示圖片,如何不打開這個(gè)窗口,在原來的窗口顯示圖片?
我嘗試過的方法,都不行
1.每個(gè)a中添加target="_self"
2.修改

function changePic(m){
    var myImg = document.getElementsByTagName("img")[0];
    myImg.src = "images/0" + m + ".jpg";
    return n = m;
}
回答
編輯回答
久不遇

三種方法.

  1. a 元素的 onclick 改成 onclick="changePic(1); return false;"
  2. changePic函數(shù)中調(diào)用 event.preventDefault();
  3. a 元素的 href 屬性改成 "javascript:void(0);"

最好把事件注冊到父元素 div 上.

2018年8月25日 01:22