2014-03-02 46 views
0

所以我有一些jquery,目前它是通過點擊一個鏈接來激活,它改變了從文本鏈接到打開嵌入在網頁中的谷歌地圖視圖 - 我想消除需要點擊,只是想要加載地圖jquery從「綁定點擊」切換到「...立即加載?」

我沒有寫模板和Imma jquery noob,會有人牽着我的手一會兒嗎?

 $(".openGoogleMap").bind('click', function() { 
      if(self.curPageview !== null && self.curPageview !== undefined){ 
       self.curPageview.find("#map_canvas").each(function(){ 
        $(this).addClass("openMap"); 
        setTimeout(function(){ 
         try{ 
          if(!self.mapLoad) { map_initialize(); self.mapLoad = true; } 
         } catch (e) { 
          $(this).html($(this).data("con"));   
         } 
         mapResizer(); 

         self.curPageview.find(".m-Scrollbar").each(    
          function(){ 
          var selg = $(this);    
          if(selg.data('added')){ 
           try{ selg.mCustomScrollbar("update"); } catch (e) { }       
          } 
         }); 

        },700); 
       }); 
      } 
     }); 

目前,.bind('點擊是什麼讓我點擊文本加載在其位置在地圖......我只是想加載地圖時,其觀點或真時(模板它有點時髦,它是一個傳呼機,與一噸的JavaScript時髦)

我試過改變'點擊'以'加載'和'inview'(猜測它的一個單獨的腳本?)但現在我想這.bind可能是問題

+0

除非您使用的是舊版本的jQuery,否則請考慮使用on()。 –

回答

0

如果我正確理解這一點,您希望消除點擊事件的要求,而只是儘快執行包含的代碼。您可以通過一種方式將其綁定到文檔的「就緒」事件,而不是打開Goog​​le地圖的「點擊」事件。只是交換了一些東西在第一行:

$(document).ready(function() { 
    if(self.curPageview !== null && self.curPageview !== undefined){ 
     self.curPageview.find("#map_canvas").each(function(){ 
      $(this).addClass("openMap"); 
      setTimeout(function(){ 
       try{ 
        if(!self.mapLoad) { map_initialize(); self.mapLoad = true; } 
       } catch (e) { 
        $(this).html($(this).data("con"));   
       } 
       mapResizer(); 

       self.curPageview.find(".m-Scrollbar").each(    
        function(){ 
        var selg = $(this);    
        if(selg.data('added')){ 
         try{ selg.mCustomScrollbar("update"); } catch (e) { }       
        } 
       }); 

      },700); 
     }); 
    } 
}); 

現在的代碼將盡快啓用作爲文檔加載 - 雖然我不能爲正,這將工作,因爲我不知道如何適應在與插件中的其餘代碼一起使用;可能有我沒有考慮到的依賴關係。 (儘管在一個稍微相關的說明中,「.bind()」在較新版本的jQuery中被棄用,所以如果你不使用舊版本,請儘量避免使用它。)

無論如何,希望這有助於!讓我知道它是否工作 - 如果沒有,我會很樂意進一步幫助。