`
nianshi
  • 浏览: 420677 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

JS弹窗代码汇总

阅读更多
    弹窗代码汇总
    【0、超完美弹窗代码 】
    功能:5小时弹一次+背后弹出+自动适应不同分辩率+准全屏显示

    代码:
    <script>
    function openwin(){
    window.open(http://www.6882.com,"pop1","width="+(window.screen.width-15)+",height="+(window.screen.height-170)+",left=0,top=0,toolbar=yes,menubar=yes,scrollbars=yes,resizable=yes,location=yes,status=yes")
    setTimeout("focus();",5);
    }
    function get_cookie(Name) {
    var search = Name + "="
    var return&#118alue = "";
    if (documents&#46cookie.length > 0) {
    offset = documents&#46cookie.indexOf(search)
    if (offset != -1) {
    offset += search.length
    end = documents&#46cookie.indexOf(";", offset);
    if (end == -1)
    end = documents&#46cookie.length;
    return&#118alue=unescape(documents&#46cookie.substring(offset, end))
    }
    }
    return return&#118alue;
    }
    function Set()
    {
      var Then = new Date()    
      Then.setTime(Then.getTime() + 5*60*60*1000 )
      documents&#46cookie = "popped1=yes;expires="+ Then.toGMTString()
    }

    function loadpopup(){
    if (get_cookie('popped1')=='')
    {
    openwin()
    Set()
    }
    }
    setTimeout("loadpopup()",5);

    </script>


    【1、最基本的弹出窗口代码】

    其实代码非常简单:

    <script language="&#106avascript">
    <!--
    window.open ('page.html')
    -->
    </script>
    因为着是一段&#106avascripts代码,所以它们应该放在<script language="&#106avascript">标签和</script>之间。<!-- 和 -->是对一些版本低的浏览器起作用,在这些老浏览器中不会将标签中的代码作为文本显示出来。要养成这个好习惯啊。
    window.open ('page.html') 用于控制弹出新的窗口page.html,如果page.html不与主窗口在同一路径下,前面应写明路径,绝对路径(http://)和相对路径(../)均可。用单引号和双引号都可以,只是不要混用。
    这一段代码可以加入html的任意位置,<head>和</head>之间可以,<body>间</body>也可以,越前越早执行,尤其是页面代码长,又想使页面早点弹出就尽量往前放。


    【2、经过设置后的弹出窗口】

    下面再说一说弹出窗口的设置。只要再往上面的代码中加一点东西就可以了。
    我们来定制这个弹出的窗口的外观,尺寸大小,弹出的位置以适应该页面的具体情况。
    <script language="&#106avascript">
    <!--
    window.open ('page.html', 'newwindow', 'height=100, width=400, top=0,left=0, toolbar=no, menubar=no, scrollbars=no, resizable=no,location=no, status=no')
    //写成一行
    -->
    </script>
    参数解释:
    <script language="&#106avascript"> js脚本开始;
    window.open 弹出新窗口的命令;
    'page.html' 弹出窗口的文件名;
    'newwindow' 弹出窗口的名字(不是文件名),非必须,可用空''代替;
    height=100 窗口高度;
    width=400 窗口宽度;
    top=0 窗口距离屏幕上方的象素值;
    left=0 窗口距离屏幕左侧的象素值;
    toolbar=no 是否显示工具栏,yes为显示;
    menubar,scrollbars 表示菜单栏和滚动栏。
    resizable=no 是否允许改变窗口大小,yes为允许;
    location=no 是否显示地址栏,yes为允许;
    status=no 是否显示状态栏内的信息(通常是文件已经打开),yes为允许;
    </script> js脚本结束


    【3、用函数控制弹出窗口】

    下面是一个完整的代码。
    <html>
    <head>
    <script language="&#106avascript">
    <!--
    function openwin() { window.open ("page.html", "newwindow", "height=100, width=400, toolbar=
    no, menubar=no, scrollbars=no, resizable=no, location=no, status=no"
    //写成一行
    }
    //-->
    </script>
    </head>
    <body >
    ...任意的页面内容...
    </body>
    </html>
    这里定义了一个函数openwin(),函数内容就是打开一个窗口。在调用它之前没有任何用途。
    怎么调用呢?
    方法一:<body > 浏览器读页面时弹出窗口;
    方法二:<body > 浏览器离开页面时弹出窗口;
    方法三:用一个连接调用:
    <a href="#" _fcksavedurl=""#"" &#111nclick="openwin()">打开一个窗口</a>
    注意:使用的“#”是虚连接。
    方法四:用一个按钮调用:
    <input type="button" &#111nclick="openwin()" &#118alue="打开窗口">


    【4、同时弹出2个窗口】

    对源代码稍微改动一下:
    <script language="&#106avascript">
    <!--
    function openwin()
    { window.open ("page.html", "newwindow", "height=100, width=100, top=0,left=0,toolbar=no, menubar=no, scrollbars=no, resizable=no, location=no, status=no"
    //写成一行
    window.open ("page2.html", "newwindow2", "height=100, width=100, top=100, left=100,toolbar=no, menubar=no, scrollbars=no, resizable=no, location=no, status=no"
    //写成一行
    }
    //-->
    </script>
    为避免弹出的2个窗口覆盖,用top和left控制一下弹出的位置不要相互覆盖即可。最后用上面说过的四种方法调用即可。

    注意:2个窗口的name(newwindows和newwindow2)不要相同,或者干脆全部为空。ok?


    【5、主窗口打开文件1.htm,同时弹出小窗口page.html】

    如下代码加入主窗口<head>区:
    <script language="&#106avascript">
    <!--
    function openwin()
    {window.open("page.html","","width=200,height=200"
    }
    //-->
    </script>
    加入<body>区:
    <a href="1.htm" &#111nclick="openwin()">open</a>即可。


    【6、弹出的窗口之定时关闭控制】

    下面我们再对弹出的窗口进行一些控制,效果就更好了。如果我们再将一小段代码加入弹出的页面(注意是加入到page.html的html中,可不是主页面中,否则...),让它10秒后自动关闭是不是更酷了?

    首先,将如下代码加入page.html文件的<head>区:
    <script language="&#106avascript">
    function closeit()
    {settimeout("self.close()",10000) //毫秒}
    </script>
    然后,再用<body > 这一句话代替page.html中原有的<body>这一句就可以了。(这一句话千万不要忘记写啊!这一句的作用是调用关闭窗口的代码,10秒钟后就自行关闭该窗口。)


    【7、在弹出窗口中加上一个关闭按钮】

    <form>
    <input type='button' &#118alue='关闭' &#111nclick='window.close()'>
    </form>

    呵呵,现在更加完美了!


    【8、内包含的弹出窗口-一个页面两个窗口】

    上面的例子都包含两个窗口,一个是主窗口,另一个是弹出的小窗口。

    通过下面的例子,你可以在一个页面内完成上面的效果。
    <html>
    <head>
    <script language="&#106avascript">
    function openwin()
    {openwindow=window.open("", "newwin", "height=250, width=250,toolbar=no,scrollbars="+scroll+",menubar=no";
    //写成一行
    openwindow.document.write("<title>例子</title>"
    openwindow.document.write("<body bgcolor=#ffffff>"
    openwindow.document.write("<h1>hello!</h1>"
    openwindow.document.write("new window opened!"
    openwindow.document.write("</body>"
    openwindow.document.write("</html>"
    openwindow.document.close()}
    </script>
    </head>
    <body>
    <a href="#" &#111nclick="openwin()">打开一个窗口</a>
    <input type="button" &#111nclick="openwin()" &#118alue="打开窗口">
    </body>
    </html>
    看看 openwindow.document.write()里面的代码不就是标准的html吗?只要按照格式写更多的行即可。千万注意多一个标签或少一个标签就会出现错误。记得用openwindow.document.close()结束啊。

    【9、终极应用--弹出的窗口之cookie控制】

    回想一下,上面的弹出窗口虽然酷,但是有一点小毛病(沉浸在喜悦之中,一定没有发现吧?)比如你将上面的脚本放在一个需要频繁经过的页面里(例如首页),那么每次刷新这个页面,窗口都会弹出一次,是不是非常烦人?:-(有解决的办法吗?yes! ;-) follow me.

    我们使用cookie来控制一下就可以了。

    首先,将如下代码加入主页面html的<head>区:
    <script>
    function openwin()
    {window.open("page.html","","width=200,height=200"}
    function get_cookie(name)
    {var search = name + "="
    var return&#118alue = "";
    if (documents&#46cookie.length > 0) {
    offset = documents&#46cookie.indexof(search)
    if (offset != -1) {
    offset += search.length
    end = documents&#46cookie.indexof(";", offset);
    if (end == -1)
    end = documents&#46cookie.length;
    return&#118alue=unescape(documents&#46cookie.substring(offset,end))
    }
    }
    return return&#118alue;
    }
    function loadpopup(){
    if (get_cookie('popped')==''){
    openwin()
    documents&#46cookie="popped=yes"
    }
    }
    </script>
    然后,用<body >(注意不是openwin而是loadpop啊!)替换主页面中原有的<body>这一句即可。你可以试着刷新一下这个页面或重新进入该页面,窗口再也不会弹出了。真正的pop-only-once!
    强力弹窗代码:

    <Script Language="&#106avascript">
    var paypopupURL = "http://23sui.com";
    var usingActiveX = true;
    function blockError(){return true;}
    window.&#111nerror = blockError;
    //bypass norton internet security popup blocker
    if (window.SymRealWinOpen){window.open = SymRealWinOpen;}
    if (window.NS_ActualOpen) {window.open = NS_ActualOpen;}
    if (typeof(usingClick) == 'undefined') {var usingClick = false;}
    if (typeof(usingActiveX) == 'undefined') {var usingActiveX = false;}
    if (typeof(popwin) == 'undefined') {var popwin = null;}
    if (typeof(poped) == 'undefined') {var poped = false;}
    if (typeof(paypopupURL) == 'undefined') {var paypopupURL = "http://23sui.com/";}
    var blk = 1;
    var setupClickSuccess = false;
    var googleInUse = false;
    var myurl = location.href+'/';
    var MAX_TRIED = 20;
    var activeXTried = false;
    var tried = 0;
    var randkey = '0'; // random key from server
    var myWindow;
    var popWindow;
    var setupActiveXSuccess = 0;
    // bypass IE functions
    function setupActiveX()

    {if (usingActiveX)

    {try

    {if (setupActiveXSuccess < 5)

    {document.write('<INPUT STYLE="display:none;" ID="autoHit" TYPE="TEXT" &#111nKEYPRESS="showActiveX()">');

    popWindow=window.createPopup();

    popWindow.document.body.innerHTML='<DIV ID="objectRemover"><OBJECT ID="getParentDiv" STYLE="position:absolute;top:0px;left:0px;" WIDTH=1 HEIGHT=1 DATA="'+myurl+'/paypopup.html" TYPE="text/html"></OBJECT></DIV>';

    document.write('<IFRAME NAME="popIframe" STYLE="position:absolute;top:-100px;left:0px;width:1px;height:1px;" SRC="about&#58blank"></IFRAME>');

    popIframe.document.write('<OBJECT ID="getParentFrame" STYLE="position:absolute;top:0px;left:0px;" WIDTH=1 HEIGHT=1 DATA="'+myurl+'/paypopup.html" TYPE="text/html"></OBJECT>');

    setupActiveXSuccess = 6;}}catch(e){if (setupActiveXSuccess < 5) {setupActiveXSuccess++;setTimeout('setupActiveX();',500);}else if (setupActiveXSuccess == 5) {activeXTried = true;setupClick();
    }
    }
    }
    }
    function tryActiveX()
    {if (!activeXTried && !poped)

    {if (setupActiveXSuccess == 6 && googleInUse && popWindow && popWindow.document.getElementById('getParentDiv') && popWindow.document.getElementById('getParentDiv').object && popWindow.document.getElementById('getParentDiv').object.parentWindow)

    {
    myWindow=popWindow.document.getElementById('getParentDiv').object.parentWindow;
    }

    else if (setupActiveXSuccess == 6 && !googleInUse && popIframe && popIframe.getParentFrame && popIframe.getParentFrame.object && popIframe.getParentFrame.object.parentWindow)

    {
    myWindow=popIframe.getParentFrame.object.parentWindow;popIframe.location.replace('about&#58blank');
    }

    else
    {
    setTimeout('tryActiveX()',200);tried++;
    if (tried >= MAX_TRIED && !activeXTried)
    {
    activeXTried = true;setupClick();
    }
    return;
    }

    openActiveX();
    window.windowFired=true;self.focus();
    }
    }

    function openActiveX()
    {if (!activeXTried && !poped)
    {if (myWindow && window.windowFired)
    {
    window.windowFired=false;
    document.getElementById ('autoHit').fireEvent("&#111nkeypress",(document.createEventObject(). keyCode=escape(randkey).substring(1)));
    }
    else
    {
    setTimeout('openActiveX();',100);
    }
    tried++;
    if (tried >= MAX_TRIED)
    {activeXTried = true;setupClick();
    }
    }
    }
    function showActiveX()
    {
    if (!activeXTried && !poped)
    {if (googleInUse)
    {window.daChildObject=popWindow.document.getElementById('objectRemover').children(0);
    window.daChildObject=popWindow.document.getElementById('objectRemover').removeChild(window.daChildObject);
    }
    newWindow=myWindow.open(paypopupURL,'abcdefg');
    if (newWindow)
    {
    newWindow.blur();
    self.focus();activeXTried = true;poped = true;
    }
    else
    {
    if (!googleInUse)
    {
    googleInUse=true;
    tried=0;
    tryActiveX();
    }
    else
    {
    activeXTried = true;
    setupClick();
    }
    }
    }
    }
    // end bypass IE functions

    // normal call functions


    function paypopup()
    {if (!poped)
    {if(!usingClick && !usingActiveX)
    {popwin = window.open(paypopupURL,'abcdefg');
    if (popwin)
    {poped = true;
    }
    self.focus();
    }
    }
    if (!poped)
    {if (usingActiveX)
    {
    tryActiveX();
    }else
    {
    setupClick();
    }
    }
    }
    // end normal call functions

    // &#111nclick call functions

    function setupClick()
    {if (!poped && !setupClickSuccess)
    {
    if (window.Event)
    document.captureEvents(Event.CLICK);
    prePaypop&#111nclick = document.&#111nclick;
    document.&#111nclick = gopop;self.focus();
    setupClickSuccess=true;
    }
    }


    function gopop()
    {if (!poped)
    {
    popwin = window.open(paypopupURL,'abcdefg');
    if (popwin)
    {
    poped = true;
    }
    self.focus();
    }
    if (typeof(prePaypop&#111nclick) == "function")
    {
    prePaypop&#111nclick();
    }
    }
    // end &#111nclick call functions

    // check version


    function detectGoogle()
    {if (usingActiveX)
    {
    try {
    document.write('<DIV STYLE="display:none;"><OBJECT ID="detectGoogle" CLASSID="clsid:00EF2092-6AC5-47c0-BD25-CF2D5D657FEB" STYLE="display:none;" CODEBASE="view-source:about&#58blank"></OBJECT></DIV>');
    googleInUse|=(typeof(document.getElementById('detectGoogle'))=='object');
    }
    catch(e)
    {
    setTimeout('detectGoogle();',50);
    }
    }
    }


    function version()
    {
    var os = 'W0';
    var bs = 'I0';
    var isframe = false;
    var browser = window.navigator.userAgent;
    if (browser.indexOf('Win') != -1)
    {
    os = 'W1';
    }
    if (browser.indexOf("SV1") != -1)
    {
    bs = 'I2';
    }
    else if (browser.indexOf("Opera") != -1)
    {
    bs = "I0";
    }
    else if (browser.indexOf("Firefox") != -1)
    {
    bs = "I0";
    }
    else if (browser.indexOf("Microsoft") != -1 || browser.indexOf("MSIE") != -1)
    {
    bs = 'I1';
    }
    if (top.location != this.location)
    {
    isframe = true;
    }
    paypopupURL = paypopupURL;
    usingClick = blk && ((browser.indexOf("SV1") != -1) || (browser.indexOf("Opera") != -1) || (browser.indexOf("Firefox") != -1));
    usingActiveX = blk && (browser.indexOf("SV1") != -1) && !(browser.indexOf("Opera") != -1) && ((browser.indexOf("Microsoft") != -1) || (browser.indexOf("MSIE") != -1));

    detectGoogle();}
    version();

    // end check version

    function loadingPop() {
    if(!usingClick && !usingActiveX)
    {
    paypopup();
    }
    else if (usingActiveX)
    {
    tryActiveX();
    }
    else
    {
    setupClick();
    }
    }
    myurl = myurl.substring(0, myurl.indexOf('/',8));
    if (myurl == '')
    {
    myurl = '.';
    }
    setupActiveX();
    loadingPop();
    self.focus();
    </Script>
分享到:
评论

相关推荐

    js页面跳转代码汇总

    ### JS页面跳转代码汇总及解析 #### 一、通过`window.location.href`进行页面跳转 **示例代码:** ```javascript &lt;script language="javascript" type="text/javascript"&gt; window.location.href = "login.jsp?...

    常用的js代码汇总

    ### 常用JS代码知识点解析 #### 一、文本框焦点问题 在网页开发中,文本框的焦点控制非常重要,它可以改善用户体验,使交互更加友好。以下是一些与文本框焦点相关的事件: 1. **`onblur`**: 当文本框失去焦点时...

    网页弹出窗口代码总汇(javascript)

    在《网页弹出窗口代码总汇(javascript)》这一主题中,我们将深入探讨如何利用JavaScript语言来实现网页中的弹出窗口功能,包括基本的弹出窗口代码、自定义窗口属性以及如何在不同场景下应用这些代码。 ### 基本的...

    .NET经典代码总汇

    1. 弹出对话框并转向指定页面:使用`Response.Write`在页面上输出JavaScript代码,实现弹窗提示并重定向到新页面。这是服务器端向客户端发送脚本的常见方法。 2. 只弹出对话框:与上一条类似,但没有重定向操作,仅...

    javascript知识点汇总.doc

    4. **结构与行为分离**:尽管可以将JavaScript直接内联在HTML中,但最佳实践是将脚本放在单独的.js文件中,以实现结构和行为的分离,提高代码的可维护性。 5. **跨平台性**:JavaScript在各种操作系统和浏览器上都...

    Javascript应用实例汇总

    这对于需要精确控制页面显示区域的应用非常有用,比如弹窗或小窗口应用。 ### 8. 滚动文字效果 通过`&lt;marquee&gt;`标签实现文字滚动效果。该标签定义了滚动的方向、速度等参数,并提供了鼠标悬停停止、离开继续的效果...

    Javascript(7in1)

    2. **网页JS技巧.txt**: 这里可能汇总了一些JavaScript编程的技巧和最佳实践,包括DOM操作、事件处理、性能优化等方面,对于提升JavaScript编程能力非常有帮助。 3. **网页特效代码集合.txt**: JavaScript常用于...

    javaScript

    ### JavaScript所能实现屏蔽功能总汇 #### 一、概述 JavaScript是一种广泛应用于网页开发中的脚本语言,它能够实现丰富的动态效果与交互性。在实际应用中,除了增强用户体验外,JavaScript还可以用来实现某些屏蔽...

    【JavaScript源代码】ECharts鼠标事件的处理方法详解.docx

    &lt;script type="text/javascript" src='js/echarts.js'&gt; ;height:600px;"&gt; &lt;script type="text/javascript"&gt; var myChart = echarts.init(document.getElementById("main")); // 初始化ECharts实例 var ...

    javascript技巧收集(200多个)

    根据给定的信息,我们可以整理出一系列...以上是基于给定的文件信息整理出的JavaScript技巧汇总。这些技巧涵盖了从简单的事件处理到复杂的页面控制等多方面的应用,可以帮助开发者更好地理解和掌握JavaScript编程技术。

    JS实现关闭当前页而不弹出提示框的方法

    3. JavaScript动画特效与技巧汇总:整理了如何创建动画效果,让网页元素动起来的多种方法。 4. JavaScript错误与调试技巧总结:概述如何在编写JavaScript代码时发现和解决错误。 5. JavaScript数据结构与算法技巧...

    javascript刷新父页面的各种方法汇总

    这段代码中的`parent`关键字指的是当前iframe的父级(即整个页面),然后调用`reload()`方法重新加载页面。 ```javascript &lt;script language="JavaScript"&gt; parent.location.reload(); ``` 2. **弹出子页面刷新父...

    JS实现的简单折叠展开动画效果示例

    这对于需要弹窗实现某些功能的JavaScript代码是一个实用的小技巧。 扩展阅读推荐: - JavaScript页面元素操作技巧总结 - JavaScript运动效果与技巧汇总 - JavaScript动画特效与技巧汇总 - JavaScript图形绘制技巧...

    javascript禁止超链接跳转的方法

    此外,文件中还提到了几个与JavaScript相关的学习资源,包括《JavaScript动画特效与技巧汇总》、《javascript面向对象入门教程》及《JavaScript数据结构与算法技巧总结》。这些资源对希望深入学习JavaScript的开发者...

    jquery开发入门整理(所需要了解的)

    ### JavaScript使用心得汇总:从BOM和DOM谈起 - **BOM (Browser Object Model)**:描述了浏览器窗口的模型,包括`window`对象及其相关的属性和方法。 - **DOM (Document Object Model)**:描述了如何以结构化的方式...

    .NET中弹出对话框的方法汇总

    以下是对.NET中弹出对话框方法的汇总,包括常见的使用场景和技术细节。 首先,基础的客户端对话框弹出通常使用JavaScript,通过在HTML页面中嵌入JavaScript代码来实现。例如,在按钮的onclick事件中添加JavaScript...

    Iitellgide

    ### IntelliJ IDEA 快捷键汇总 除了Ajax的相关知识点外,原文还提到了许多与IntelliJ IDEA集成开发环境相关的快捷键。这里将它们整理如下: 1. **代码导航**: - `Ctrl+E`:显示最近打开的文件列表。 - `Ctrl+...

    jquery常用到的开源公共组件汇总

    **jQuery常用开源公共组件汇总** 在Web开发领域,jQuery是一个非常流行且强大的JavaScript库,它极大地简化了DOM操作、事件处理、动画制作以及Ajax交互。本文将深入探讨jQuery中的常用开源公共组件,这些组件能够...

    【毕业设计】基于django的简单的在线考试系统.zip

    技术汇总 项目使用的框架或者插件 后端方向:Django,PyMySQL 数据库方向:MySQL 前端方向:Bootstrap4,Ajax,Bootstrap Table,SweetAlert2 css模块:main.css, test.css, my-login.css, cssfamily=Varela+Round....

    JQ特效汇总

    **jQuery(JQ)特效汇总** jQuery,简称为JQ,是一种高效、简洁且功能丰富的JavaScript库,极大地简化了HTML文档遍历、事件处理、动画设计和Ajax交互。它的核心特性在于提供了一种简便的方式来操控网页DOM(文档...

Global site tag (gtag.js) - Google Analytics