【问题标题】:jQuery load() prevent link twice if parent page already have如果父页面已经有,jQuery load() 会阻止链接两次
【发布时间】:2014-04-24 18:07:43
【问题描述】:

我有一个页面使用 jquery 加载(页面数据将加载到灯箱)

//index.php

    <script type="text/javascript" src="/jquery-1.11.0.min.js"></script>
    <a href='login.php'></a> //lightbox will load this page into index.php

//login.php
use jquery post data

因为iphone的布局问题,我决定直接使用window.location到login.php页面。

我的问题是 login.php 页面没有 jquery 链接

如果我在我的 login.php 中添加这个链接,当桌面设备使用 lightbox 加载这个页面时,它会加载 jquery 两次

如果父页面已经有链接不再链接,有什么方法可以防止,比如 php require_once?

【问题讨论】:

    标签: javascript jquery


    【解决方案1】:

    一个非常简单的方法来做到这一点

    在你的 window.location + '?mobile=1'

    比在你的 login.php 中

    你可以检查是否设置了 $_GET,如果不是回显链接

    【讨论】:

      【解决方案2】:

      如果window.jQuery 不存在,您可以在login.php 中动态包含jQuery..

      // Example:
      if( typeof window.jQuery == 'undefined' ) {
          JavaScript.load("/jQuery.js");
      }
      
      // With callback (that’s the good thing):
      if( typeof window.jQuery == 'undefined' ) {
          JavaScript.load("/jQuery.js", function() {
            // your code or whatever ...
          });
      }
      
      
      /** Testet with:
       *  - IE 5.5, 7.0, 8.0, 9.0 (preview)
       *  - Firefox 3.6.3, 3.6.8
       *  - Safari 5.0
       *  - Chrome 5.0
       *  - Opera 10.10, 10.60
       */
      var JavaScript = {
        load: function(src, callback) {
          var script = document.createElement('script'),
              loaded;
          script.setAttribute('src', src);
          if (callback) {
            script.onreadystatechange = script.onload = function() {
              if (!loaded) {
                callback();
              }
              loaded = true;
            };
          }
          document.getElementsByTagName('head')[0].appendChild(script);
        }
      };
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-12-05
        • 2011-10-27
        • 1970-01-01
        • 2022-01-22
        • 2019-07-05
        • 1970-01-01
        • 2022-11-10
        • 1970-01-01
        相关资源
        最近更新 更多