Они 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 даже что-либо. Если это не так, то это, скорее всего, ваша проблема;)