qq_36137324
2016-11-24 04:04
采纳率: 31.3%
浏览 2.7k

请教各位大神一个js页面一加载就执行的问题

图片说明我在一个页面设置了一个js函数,页面一加载就执行点击某个链接跳转到另一个页面,但我发现我点击返回前一个页面时,就会不停的执行那个页面一加载就点击某个链接的js函数。这样就进入了一个奇怪的循环,点击返回到前一个页面,就自动执行页面js函数,点击了页面的一个链接,又跳回了原来的页面。请教各位大哥有什么方法能解决吗?

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

4条回答 默认 最新

  • 陈田田 2016-11-25 09:12
    已采纳

    针对你的问题,原因在于每次返回相当于又加载了一次原来的页面,所以会一直死循环。

    解决的方法是加参数。

    首先我先给你两个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参数,实际应用中是通过参数传递的,希望可以帮助到你。

    打赏 评论
  • ziwozizhan 2016-11-24 04:35

    你可以在url中添加一个参数,http://xxxx?isload=_,

    每次你要跳转到这个页面时 就为isload赋不同的值,

    然后在这个页面中获取 路径中 isload的值 当isload=0 时 执行加载,当isload=1 时不执行加载

    仅供参考

    打赏 评论
  • ServiceGood 2016-11-24 05:35

    执行完方法return 一下。是否能行呢

    打赏 评论
  • 阿蓝好多个8 2016-11-24 07:58

    用这个
    $(document).ready(function(){

        $("#id").trigger("click");
    });
    
    或者
    $(document).ready(function(){
    
     window.location.href=url;
    });
    
    打赏 评论

相关推荐 更多相似问题