簡體   English   中英

jQuery加載后運行jQuery代碼

[英]Run jQuery code once jQuery loaded

我在頁面上的結束標記之前加載了jQuery。

    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js" type="text/javascript"></script>

我的大部分js都在以下位置加載

    <script src="js/script.js" type="text/javascript"></script>

哪個很好。 我需要在head標簽中投放一些廣告代碼。 通常,這可以正常工作,但是我想添加一個響應異常。 例如

    var mob = 0;
    if(jQuery(window).width() < 727)  {
        mob = 1;
    }
    if(mob)  {console.log('run special mob related code');}
    else {console.log('run special desktop related code');}

因為我的代碼在中,所以出現錯誤ReferenceError:jQuery未定義。 有沒有解決的辦法? 廣告代碼除非在頭部,否則不會運行,但是我無法真正將jquery移入頭部,因為我在多個站點上都有此代碼,並且可能會影響其他插件的運行方式嗎?

為什么不使用這樣的東西:

if (document.documentElement.clientWidth < 727) {
mob = 1;
}

在代碼的早期,您可以在window對象上定義一個jQuery屬性,當實際的jQuery對象將其重新分配時,它將運行需要jQuery的代碼。

(function(){
  var _jQuery;
  Object.defineProperty(window, 'jQuery', {
    get: function() { return _jQuery; },
    set: function($) {
      _jQuery = $;

      // put code or call to function that uses jQuery here

    }
  });
})();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM