Правильный способ запустить следующий скрипт JQuery? - PullRequest
2 голосов
/ 08 апреля 2009

Я использую плагин FancyBox, и когда пользователь нажимает на маленькое изображение, появляется более крупное изображение. Я видел код для того, чтобы сделать это с 1 изображением, но не с 2, поэтому я предположил, что правильным способом было просто сделать следующее, что мне любопытно, правильно ли это или нет? Вы просто помещаете элемент операторов, над которым вы хотите, чтобы fancybox работал сразу после друг друга.

<script type="text/javascript">
    $(document).ready(function() {
        $("a#link1").fancybox();
        $("a#link2").fancybox();
    });
</script>

Ответы [ 3 ]

5 голосов
/ 08 апреля 2009

Если вы планируете иметь несколько ссылок, с которыми вы хотите, чтобы это произошло, вы можете просто дать им всем класс fancybox и затем сделать:

$(function() {
    $('a.fancybox').fancybox();
});

Таким образом, когда у вас появляются новые ссылки, которые должны быть причудливыми, вам не нужно присваивать им уникальные идентификаторы и возвращаться к javascript, чтобы убедиться, что они инициализируются. Вы можете иметь более 1 класса на элемент, так что это также не повлияет на существующие классы. В большинстве случаев, когда у вас есть наборы чего-либо, разумно использовать классы, чтобы вы могли обращаться с ними как таковыми при манипулировании ими с помощью jQuery.

2 голосов
/ 08 апреля 2009

Да, правильно поместить код, который вы хотите запустить в блок ready . Вы можете использовать более короткий синтаксис

<script type="text/javascript">
    $(function() {
        $("a#link1").fancybox();
        $("a#link2").fancybox(); 
    });
</script>

, который делает то же самое.

1 голос
/ 08 апреля 2009

Да, это выглядит хорошо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...