Как разрешить пользователям указывать номер слайда и URL-адрес для загрузки контента с помощью Ajax - PullRequest
1 голос
/ 01 марта 2012

Есть ли способ, позволяющий пользователям указать, сколько слайдов они хотят иметь в слайдере.А также с какой HTML-страницы они хотят, чтобы содержимое загружалось на каждом слайде с помощью вызова AJAX в jQuery.

Поскольку созданный мною слайд использует вызов jQuery .load() для загрузки контента в каждый конкретный слайд всякий раз, когда он появляется, и устанавливает для window.location.hash определенное значение для каждого слайда;Я бы хотел, чтобы пользователи могли указывать значения для этих двух вещей.

Другими словами, укажите URL-адрес, используемый методом .load() для каждого слайда, а также хэш-тег, который будет отображаться при каждом показе слайдов.

URL-адрес .load() должен быть разным для каждого слайда, а также для хеш-тега.

Так, например: Слайд для слайда номер два, содержимое которого указано только по URL-адресудля слайда два загружается, и хэш-тег изменяется на некоторое указанное пользователем значение.

Слайд на слайд номер три, загружается содержимое из указанного в URL-адресе значения для слайда три, а хэш-тег заменяется другим заданным пользователем значением.

Есть ли способ достичь этихчто позволяет пользователю выбирать количество слайдов, которое он хочет иметь, вместо того, чтобы задавать количество слайдов?

Также есть способ сортировки пользовательских спецификаций в массиве, например:

    var slideshash = ["#userSpecifiedHash1", "#userSpecifiedHash2"];

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

1 Ответ

1 голос
/ 01 марта 2012

Я считаю, что библиотека маршрутизации path.js чрезвычайно полезна в ситуациях, которые вы объяснили. Загрузка определенного содержимого и функций вызова на основе URL-адресов / хеш-тегов упрощена ...

Есть несколько сэмплов, расположенных на проекте GitHub @ ЗДЕСЬ

редактирует:

Я не слишком уверен в вашей логике за вашими хешами, но вот как я бы это сделал с PathJS и jQuery Имейте в виду, что в этом примере мы просто добавляем больше маршрутов, а не убираем их ...

    <script type="text/javascript">
    var slidehash = new Array();

    function go(){  
            Path.map(slidehash[0]).to(function(){
                alert("#1 hash found: "+slidehash[0]);
            });
            Path.map(slidehash[1]).to(function(){
                alert("#2 hash found: "+slidehash[1]);
            });
            Path.map(slidehash[2]).to(function(){
                alert("#3 hash found: "+slidehash[2]);
            });
        Path.listen();
    }

    $(function() {  
        $('#save').click(function() {
            slidehash[0]=$(".changeMe:eq(0)").val();
            slidehash[1]=$(".changeMe:eq(1)").val();
            slidehash[2]=$(".changeMe:eq(2)").val();
            go();           
        });

    });
    </script>
<ul id="inputList">
    <li><input class="changeMe" type="text" value="#/test"></li>
    <li><input class="changeMe" type="text" value=""></li>
    <li><input class="changeMe" type="text" value=""></li>
</ul>
<p><input id="save" type="button" value="Assign hashbang!" /></p>
</script>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...