程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程解疑 >> javascript-請教各位大神一個js頁面一加載就執行的問題

javascript-請教各位大神一個js頁面一加載就執行的問題

編輯:編程解疑
請教各位大神一個js頁面一加載就執行的問題

圖片說明我在一個頁面設置了一個js函數,頁面一加載就執行點擊某個鏈接跳轉到另一個頁面,但我發現我點擊返回前一個頁面時,就會不停的執行那個頁面一加載就點擊某個鏈接的js函數。這樣就進入了一個奇怪的循環,點擊返回到前一個頁面,就自動執行頁面js函數,點擊了頁面的一個鏈接,又跳回了原來的頁面。請教各位大哥有什麼方法能解決嗎?

最佳回答:


針對你的問題,原因在於每次返回相當於又加載了一次原來的頁面,所以會一直死循環。

解決的方法是加參數。

首先我先給你兩個html的實例代碼:
1.html

 <!DOCTYPE html>
<html lang="zh-cn">
<head>
    <meta charset="utf-8">
    <title>跳轉</title>
    <style type="text/css">
    </style>
</head>
<body>
<a href="2.html" id="mykcxx0">跳轉</a>
<script type="text/javascript">
    function query(query){
        var subUrl = location.search.slice(location.search.indexOf('?') + 1),
            subArr = subUrl.split('&') || [],
            querystr = '';

        return subArr.forEach(function(v){
            v.indexOf(query + '=') === 0 && (querystr = v.slice(query.length + 1))
        }), querystr;
    }
    window.onload = function(){
        var button = document.getElementById('mykcxx0');
        var rel = query('rel');
        if(rel == 1){
            button.click();
        }
    }
</script>
</body>
</body>
</html>

2.html

<!DOCTYPE html>
<html lang="zh-cn">
<head>
    <meta charset="utf-8">
    <title>返回</title>
    <style type="text/css">
    </style>
</head>
<body>
<a href="1.html">返回</a>
</body>
</body>
</html> 

這個時候你先打開1.html,可以發現它沒有跳轉,這時在地址欄中後面加上"?rel=1"
圖片說明

按下enter鍵後,就跳轉到了2.html,當你點擊2.html中的返回時,就又跳到了1.html。

我這裡示意的是手動加rel參數,實際應用中是通過參數傳遞的,希望可以幫助到你。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved