2013-07-30 74 views
-1

我有一個WordPress上購買主題我想改變的JavaScript行爲加載頁面時,或加載jQuery的幻燈片從右到左

目前我的標題從頂部動畫到底我想改變運行時間的行爲。

,你可以在這裏

http://wordpress.p198800.webspaceconfig.de/

看到它,我試圖做到這一點

<style type="text/css"> 
    .myFix { bottom: 0 !important; } 
</style> 

<script type="text/javascript"> 

    function myFix() { 

     $("#slidecaption").addClass("myFix"); 

     $("#slidecaption").css("marginRight", "0").animate({ 
      marginRight: "+=1000" 
     }); 
    } 
</script> 

回答

1

他們的jQuery表達式是正確的,但是如果你從來沒有真正調用myFix()該代碼永遠不會運行。

圍繞自主執行功能的一種常用方法是SEAF(自執行匿名函數):

(function myFix() { 
    $("#slidecaption").addClass("myFix"); 

    $("#slidecaption").css("marginRight", "0").animate({ 
    marginRight: "+=1000" 
    } 
})(); 

包裝紙的功能,像這樣將導致它而沒有被顯式調用運行。

這個具體的例子在技術上並不是匿名的,但假設你打算在其他時間能夠呼叫myFix(),同時仍然希望它自己運行。

如果你不需要調用它,只需應用jQuery的規則,把功能出來的畫面一起:

<script> 
    $("#slidecaption").addClass("myFix"); 

    $("#slidecaption").css("marginRight", "0").animate({ 
    marginRight: "+=1000" 
    } 
</script> 

這裏更多:http://markdalgleish.com/2011/03/self-executing-anonymous-functions/

林這裏假設一個失敗的調用myFix()是問題所在。如果你確實有這個功能綁定到這裏沒有顯示的事件,請更新你的文章的大圖。

另一種選擇是,當這些規則被應用時,由於DOM的狀態,jQuery選擇器沒有找到任何東西。試試:

console.log($('#slidecaption')); 

看看jQuery是否甚至返回任何東西。如果沒有,那麼這很可能是你的問題;)