2013-07-30 2 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/

Im предполагая, что здесь проблема с неудачным вызовом myFix(). Если у вас есть функция, связанная с каким-либо событием, которое не показано здесь, обновите свой пост с помощью большой картинки.

Другой альтернативой является то, что селекторы jQuery не находят ничего из-за состояния DOM при применении этих правил. Попробуйте:

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

, чтобы узнать, возвращает ли jQuery даже что-либо. Если это не так, то это, скорее всего, ваша проблема;)