点击任何连接或空白地方先弹窗。

本文介绍了一种在多种浏览器中实现兼容性良好的弹窗功能的方法。通过检测不同浏览器类型并采用相应的弹窗策略,确保了包括IE、Firefox、Chrome等在内的主流浏览器都能正常显示弹窗内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

测试过safar,火狐,Google,世界之窗。都可以支持弹窗  

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<HTML>
 <HEAD>
  <TITLE> New Document </TITLE>
  <META NAME="Generator" CONTENT="EditPlus">
  <META NAME="Author" CONTENT="">
  <META NAME="Keywords" CONTENT="">
  <META NAME="Description" CONTENT="">
 </HEAD>
 <div id="Layer1" style="position:absolute; width:260px; height:115px; z-index:1; left: 50px; top: 77px; filter:Alpha(opacity=30)"> 
<a href="http://www.baidu.com" target="_blank">哦哦</a>
</div>
<script type="text/javascript" >
document.onclick=function(){
//封装的弹窗函数
  var cs_url = 'http://www.xunlei.com',
    uid = window.cs_U,
    cs_S = window.cs_S,
    cs_d = window.cs_d,
    cs_dt = window.cs_dt,
    cs_pidx1 = window.cs_pidx1,
    cs_user = window.cs_user;
    var cs_exp = new Date();
    cs_exp.setTime(86400000 * (Math.floor((cs_exp.getTime() - cs_exp.getTimezoneOffset() * 60000) / 86400000) + 1) + cs_exp.getTimezoneOffset() * 60000);
    var cs_exp1 = new Date();
    cs_exp1.setTime(cs_exp1.getTime() + 172800 * 1000);


    function SCK(sName, sValue, oExpires, sPath) {
        document.cookie = sName + "=" + escape(sValue) + ";expires=" + oExpires.toGMTString() + ";path=" + sPath
    }
    SCK('37cs_pidx', cs_pidx1, cs_exp, '/');
    SCK('37cs_user', cs_user, cs_exp1, '/');


    var ua = navigator.userAgent;
    var browser = {
        ie: /msie/i.test(ua),
        ie6: /msie 6/i.test(ua),
        ie7: /msie 7/i.test(ua),
        ie8: /msie 8/i.test(ua),
        ie9: /msie 9/i.test(ua),
        360 : /360se/i.test(ua),
        sogou: /;?se.+?MetaSr/i.test(ua),
        maxthon: /Maxthon/i.test(ua),
        tt: /TencentTraveler/i.test(ua),
        ff: /firefox/i.test(ua),
        webkit: /AppleWebKit/i.test(ua),
        opera: /Opera/i.test(ua),
        qqbrowser: /QQBrowser/i.test(ua),
        theworld: /Theworld/i.test(ua)
    };
    function event(e, event, func, act) {
        if (browser.ie) e[act === undefined ? 'attachEvent': 'detachEvent']('on' + event, func);
        else e[act === undefined ? 'addEventListener': 'removeEventListener'](event, func, false)
    }
    function updatecs() {
        try {
            var pen_exp = new Date();
            if (cs_dt == 0 || (cs_dt == 1 && cs_pidx1 == 0)) {
                pen_exp.setTime(pen_exp.getTime() + (uid == 9249 ? 1000 * cs_d: 60000 * cs_d));
                SCK('37cs_pennding' + uid, 'true', pen_exp, '/');
                SCK('CS_pending' + uid, 'true', pen_exp, '/')
            }
            pen_exp.setTime(pen_exp.getTime() + 172800 * 1000);
            SCK('37cs_show', cs_S, pen_exp, '/');
        } catch(q) {}
    }
    function pop(url, param) {
        if (!document.body) {
            return setTimeout(function() {
                pop(url, param)
            },
            13)
        }
        try {
            if (browser['webkit'] && browser['maxthon']) {
                if (!func(url)) {
                    a_pop(url)
                }
            } else if (browser['tt']) {
                if (!a_pop(url)) {
                    object_pop(url)
                }
            } else if (browser['sogou']) {
                if (!func(url)) {
                    a_pop(url)
                }
            } else if (browser['webkit'] && browser['qqbrowser']) {
                if (!func(url)) {
                    click_pop(url)
                }
            } else if (browser['webkit'] || browser['opera']) {
                a_pop(url)
            } else if (browser['theworld'] && browser.ie6) {
                if (!object_pop2(url)) {
                    a_pop(url)
                }
            } else if (browser['theworld'] && browser.ie8) {
                if (!func(url)) {
                    try {
                        object_pop(url)
                    } catch(e) {
                        click_pop(url)
                    }
                }
            } else if (browser.ie6) {
                if (!func(url)) {
                    object_pop2(url)
                }
            } else if (browser.ie8 || browser.ie9) {
                if (!func(url)) {
                    try {
                        object_pop(url)
                    } catch(e) {
                        a_pop(url)
                    }
                }
            } else if (browser['ie']) {
                if (!func(url)) {
                    try {
                        object_pop(url)
                    } catch(e) {
                        click_pop(url)
                    }
                }
            } else if (browser['ff']) {
                if (!func(url)) {
                    click_pop(url)
                }
            } else {
                if (!func(url)) {
                    click_pop(url)
                }
            }
            updatecs()
        } catch(e) {
            if (browser.ie7 || browser.ie8 || browser.ie9 || browser['qqbrowser']) {
                click_pop(url)
            } else {
                a_pop(url)
            }
            updatecs()
        }
    }
    function object_pop(url, param) {
        var object = document.createElement('object');
        object.setAttribute('classid', 'CLSID:6BF52A52-394A-11D3-B153-00C04F79FAA6');
        object.style.cssText = 'position:absolute;left:1px;top:1px;width:1px;height:1px;';
        append(object);
        object.launchURL(url)
    }
    function object_pop2(url, param) {
        var object2 = document.createElement('object');
        object2.setAttribute('classid', 'clsid:2D360201-FFF5-11d1-8D03-00A0C959BC0A');
        object2.style.cssText = 'position:absolute;left:1px;top:1px;width:1px;height:1px;';
        append(object2);
        for (var i in object2) {
            try { (function(o) {})(object2[i])
            } catch(e) {}
        }
        setTimeout(function() {
            object2.DOM.Script.open(url, '_blank', '')
        },
        500)
    }
    function append(e) {
        for (var t in {
            body: 1
        }) {
            var ele = document.getElementsByTagName(t);
            for (var i = 0; i < ele.length; i++) {
                ele[i].insertBefore(e, ele[i].firstChild);
                return
            }
        }
    }


    function click_pop(url, param) {
        event(document, 'mouseup',
        function(e) {
            e = e || window.event;
            e.canceBubble = true;
            event(document, 'mouseup', arguments.callee, true);
            func(url, param)
        })
    }


    function a_pop(url) {
        var a = document.createElement("a");
        a.href = url;
        a.target = "_blank";
        var div = document.createElement('div');
        div.style.backgroundColor = '#fff';
        a.appendChild(div);
        append(a);
        var as = a.style;
        as.position = "absolute";
        as.zIndex = '2147483647';
        as.display = "block";
        as.top = "0px";
        as.left = "0px";
        as.cursor = 'default';
        as.opacity = "0";
        as.filter = "alpha(opacity:0)";
        var m = setInterval(function() {
            a.style.zIndex = '2147483647';
            var d = (document.compatMode.toLowerCase() == 'css1compat') ? document.documentElement: document.body;
            a.style.top = Math.max(document.documentElement.scrollTop, document.body.scrollTop) + 'px';
            div.style.width = Math.min(d.clientWidth, d.scrollWidth) + 'px';
            div.style.height = d.clientHeight + 'px';
            if (browser['ie']) {
                try {
                    var divs = document.body.childNodes;
                    for (var i = 0; i < divs.length; i++) {
                        if (!divs[i]['style']) {
                            continue
                        }
                        var _i = parseInt(divs[i].style.zIndex);
                        if (_i && divs[i] != a && _i == 2147483647) {
                            divs[i].style.zIndex = _i - 1
                        }
                    }
                    a.style.zIndex = '2147483647'
                } catch(e) {}
            }
        },
        120);
        a.onclick = function(e) {
            e = e || window.event;
            e.cancelBubble = true;
            setTimeout(function() {
                a.parentNode.removeChild(a)
            },
            200);
            clearInterval(m)
        };
        event(a, 'mouseup',
        function(e) {
            e = e || window.event;
            e.cancelBubble = true
        });
    }
    function func(url, param) {
        var f = window[String.fromCharCode(111, 112, 101, 110)];
        var w = f(url, '_blank', 'left=0,top=0,toolbar=yes,location=yes,' + 'status=yes,menubar=yes,scrollbars=yes,' + 'resizable=yes,width=' + screen.width + ',height=' + screen.height);
        return w
    }
    setTimeout(function() {
        pop(cs_url, {
            a: 1,
            b: 2
        })
    },
    300);
    event(window, 'beforeunload',
    function() {})
//封装的弹窗函数
  document.onclick=null;//下次点击就不会生效了
}


</script> 
<body> 
<a href="http://www.baidu.com" target="_blank">哦哦2</a>
<a href="http://www.baidu.com" target="_blank">哦哦3</a>
 <BODY>
  
 </BODY>
</HTML>
内容概要:本文档详细介绍了Analog Devices公司生产的AD8436真均方根-直流(RMS-to-DC)转换器的技术细节及其应用场景。AD8436由三个独立模块构成:轨到轨FET输入放大器、高动态范围均方根计算内核和精密轨到轨输出放大器。该器件不仅体积小巧、功耗低,而且具有广泛的输入电压范围和快速响应特性。文档涵盖了AD8436的工作原理、配置选项、外部组件选择(如电容)、增益调节、单电源供电、电流互感器配置、接地故障检测、三相电源监测等方面的内容。此外,还特别强调了PCB设计注意事项和误差源分析,旨在帮助工程师更好地理解和应用这款高性能的RMS-DC转换器。 适合人群:从事模拟电路设计的专业工程师和技术人员,尤其是那些需要精确测量交流电信号均方根值的应用开发者。 使用场景及目标:①用于工业自动化、医疗设备、电力监控等领域,实现对交流电压电流的精准测量;②适用于手持式数字万用表及其他便携式仪器仪表,提供高效的单电源解决方案;③在电流互感器配置中,用于检测微小的电流变化,保障电气安全;④应用于三相电力系统监控,优化建立时间和转换精度。 其他说明:为了确保最佳性能,文档推荐使用高质量的电容器件,并给出了详细的PCB布局指导。同时提醒用户关注电介质吸收和泄漏电流等因素对测量准确性的影响。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值