$ ("# slider"). easySlider не является функцией - PullRequest
1 голос
/ 21 декабря 2011

Я не привык работать с jQuery, но я подумал использовать easyslider для показа некоторых фотографий на моем сайте. Проблема в том, что я получаю эту ошибку: $ ("# slider"). EasySlider не является функцией Я не знаю, что я сделал неправильно, потому что, если я открою страницу в одиночку, проблем не будет, но когда я помещаю файл обратно между другими, он не будет работать. Вот мой код:

    <script type="text/javascript" src="/js/jquery.js"></script>
    <script type="text/javascript" src="/js/easySlider1.7.js"></script>
    <script type="text/javascript">
        $(document).ready(function(){   
            $("#slider").easySlider({
                auto: true, 
                continuous: true
            });
        }); 
    </script>

<div class="block">
    <div class="m950 flb">  

<div id="slider" style="position:relative; width:947px; height:615px; left:-20px;  top:-3px; overflow:hidden;">
<ul>                
                <li><img src="/images/slideshow/1.jpg" /></li>
        <li><img src="/images/slideshow/2.jpg" /></li>
        <li><img src="/images/slideshow/3.jpg" /></li>
        <li><img src="/images/slideshow/4.jpg" /></li>
        <li><img src="/images/slideshow/5.jpg" /></li>
                <li><img src="/images/slideshow/6.jpg" /></li>
        <li><img src="/images/slideshow/7.jpg" /></li>
        <li><img src="/images/slideshow/8.jpg" /></li>
        <li><img src="/images/slideshow/9.jpg" /></li>
        <li><img src="/images/slideshow/10.jpg" /></li>

</ul>
</div>



</div>
</div>

Кто-нибудь знает, что я мог бы сделать, чтобы это сработало, потому что я ломал голову над этой проблемой.

Заранее большое спасибо!

Ответы [ 3 ]

1 голос
/ 22 декабря 2011

Попробуйте:

 <script type="text/javascript">
( function($) {
    // we can now rely on $ within the safety of our “bodyguard” function
    $(document).ready( function() { 
            $("#slider").easySlider({
                auto: true, 
                continuous: true
            });
              } );
} ) ( jQuery );

</script>

Это обходной путь.

1 голос
/ 21 декабря 2011

Звучит так, как будто вы перемещаете файл и нарушили ссылочные пути к вашим файлам javascript.

Если я открою страницу в одиночку, проблем не будет, но когда я размещаюобратно между другими, это не сработает.

Если вы просматриваете исходный код страницы и нажимаете ссылку на ваш файл javascript, загружается ли он?Если нет, то путь неправильный.Если вы разместите больше информации о вашей структуре каталогов, то кто-то может помочь вам с этим.Или вы можете просто использовать полный путь вместо вашего относительного пути.

<script type="text/javascript" src="/js/jquery.js"></script>
<script type="text/javascript" src="/js/easySlider1.7.js"></script>
<script type="text/javascript" src="http://mysite.com/js/jquery.js"></script>
<script type="text/javascript" src="http://mysite.com/js/easySlider1.7.js"></script>
0 голосов
/ 21 декабря 2011

Возможно, вы загружаете jQuery дважды, когда добавляете страницу, которую вы показывали, на свою главную страницу. Двойная проверка jquery не загружена в ваш <head> раздел.

В случае, если это происходит, сохраняйте загрузку только в одном месте, то есть, если ползунок нужен только на этой конкретной странице, но jQuery необходим для всего приложения, тогда сохраняйте загрузку jQuery в вашем <head> и оставляйте загрузку easySlider в этом стр. (но не забудьте загрузить jquery только один раз!)

...