2017-08-04 95 views
2

工作,我有一個jQuery腳本的類添加到一個divjQuery腳本不刷新頁面

jQuery('.responsive-calendar .today a').addClass('selectedDay'); 

此腳本適用於頁面初始加載並添加類。但在刷新頁面時,這不起作用,並且不添加該類。

所以有什麼功能可以用來在頁面刷新時加載這個腳本。我已經嘗試添加到以下功能,但沒有運氣。

jQuery(window).bind("load", function() {...}); 
jQuery(window).load(function(){...}); 
jQuery(window).on('load',function() { ... }); 

我在這裏錯過了什麼嗎?

+1

寫入它裏面'document.ready'? – kukkuz

+0

包裝你的代碼如下: $(document).ready(function(){ //你的代碼在這裏 }); 此外你是什麼意思bu初始加載和頁面刷新?如果頁面被刷新,那麼這也是代碼的初始加載。 – Star

+0

它寫在document.ready – Stuborg

回答

4

使用jQuery(document).ready()

例子:

(function($) { 
    $(document).ready(function() { 
     $('.responsive-calendar .today a').addClass('selectedDay'); 
    }); 
})(jQuery); 

UPDATE: 爲了您的日曆,使用其onInit()回調!

實施例:

(function($) { 
    $(document).ready(function() { 
     $('.responsive-calendar').responsiveCalendar({ 
      onInit: function() { 
       $('.responsive-calendar .today a').addClass('selectedDay'); 
      } 
     }); 
    }); 
})(jQuery); 
+1

*爲什麼?*最有可能的是,鑑於涉及的類名,這是因爲它是第三方組件,可能是通過javascript生成的。所以*不能在後端更改。 –

+0

如果它是由javascript生成的,那麼這意味着文檔準備就緒時該塊可能不存在。考慮在執行你的函數之前添加一個超時。 – Sergej

+0

我試過這個,它似乎沒有工作。我正在使用來自w3widgets http://w3widgets.com/responsive-calendar/的響應日曆插件。所以我不能在後臺添加類。 – Stuborg