zoukankan      html  css  js  c++  java
  • 单击一个按钮,要根据ajax返回的结果来判断跳转和其他状态

    $(".ajax").on("click", function() {
           // var newTab=window.open('about:blank');
    
            var index = $(this).data("index");
            $.post("/ajax/operation/openredenvelopetask", {
                taskid: index
            }, function(data) {
                if(data.errno === 0){
                    if(index===1){
                        // 跳任务1
                       //window.open('http://cp01-baike-epc017.epc.baidu.com:8900/task/201131');
                       //newTab.location.href="http://cp01-baike-epc017.epc.baidu.com:8900/task/201131";
                       //window.location.href = '/task/201131'
                       $('#t_form'+index).submit();
                    }else if(index===2){
                        // 跳任务2
                       //window.open('http://cp01-baike-epc017.epc.baidu.com:8900/task/201508');
                       //newTab.location.href="http://cp01-baike-epc017.epc.baidu.com:8900/task/201508";
                       //window.location.href="http://cp01-baike-epc017.epc.baidu.com:8900/task/201508";
                       $('#t_form'+index).submit();
                       $('.btn'+index).removeClass('btn-edit').addClass('btn-go').text('继续做');
                    }
                } else if (data.errno === 1) {
                    $('.btn'+index).removeClass('btn-edit').removeClass('btn-go').addClass('btn-end').text('今日已达上限');
                    //newTab.close();
                    //return false;
                } else if (data.errno === 2) {
                    userLogin.showLoginPop();
                    //return false;
                }
            }, "json");
        });

    1.直接在js中调用window.open()函数去打开一个新窗口,浏览器会拦截你,通过 下面的方法来避免

    就是先用window.open打开一个窗口,然后修改地址。如var tempwindow=window.open('_blank');打开一个窗口,然后用 tempwindow.location='http://www.baidu.com';使这个窗口跳转到百度,这样就会呈现弹出百度窗口的效果了。

    $("#last").click(function(){
    var w=window.open();
    setTimeout(function(){
    w.location="http://www.baidu.com";
    }, 1000);
    
    return false;
    }); 
    /////

    但是在需要关闭时却出现一闪的现象,

    2. window.location.href = ‘xxxx’,但是不会打开新窗口

    3.form的submit();来实现

    <!DOCTYPE html>
    <html lang="en">
        <head>
            <meta charset="UTF-8">
            <title>Document</title>
            <style type="text/css">
                *{margin: 0;padding: 0;}
                #j_form{position: absolute;left: -999em;}
            </style>
        </head>
        <body>
            <form id="j_form" action="http://www.baidu.com" target="_blank" method="post"></form>
            <button id="j_btn">click me</button>
            <script src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js" type="text/javascript"></script>
            <script type="text/javascript">
                $('#j_btn').on('click',function(){
                    $('#j_form').submit();
                });
            </script>
        </body>
    </html>

    4.jquery的trigger()方法,模拟触发,但是a标签中的href用js不能控制,但是可以利用trigger()冒泡特性, <a href="http://baike.baidu.com/task/200414" target="_blank" class="btn"><span class="jump1"></span></a> 

    $('#jump1').trigger('click');

  • 相关阅读:
    127. Word Ladder(单词变换 广度优先)
    150. Evaluate Reverse Polish Notation(逆波兰表达式)
    32. Longest Valid Parentheses(最长括号匹配,hard)
    20. Valid Parentheses(括号匹配,用桟)
    递归桟相关
    python编写计算器
    python打印9宫格,25宫格等奇数格,且横竖斜相加和相等
    基于百度人工智能图片识别接口开发的自动录题系统
    自动收集有效IP代理
    python数据储存
  • 原文地址:https://www.cnblogs.com/zhangxinxin111/p/5131460.html
Copyright © 2011-2022 走看看