2015-03-17 4 views
-1

Я использую слайдер изображения на моем сайте: http://arirang.hr/cocohouse/accommodation/CHfood_en.html. Это хорошо работает для меня.упрощение длинного списка функций щелчка

Когда посетитель нажимает миниатюру под ползунком, он переходит к конкретному изображению. Это делается с помощью функции щелчка для каждого миниатюры. Началось только с несколькими эскизами. Сейчас довольно много. Закончился длинный список функций щелчка.

Угадайте, что правильный путь должен быть через какую-то петлю. Когда посетитель нажимает на любую миниатюру, чтобы запустить цикл, который находит, на который щелкнут, и вызовите цикл с нажатым номером.

+3

показать код, вероятно, будет лучше использовать JQuery, чтобы добавить функцию чтобы щелкнуть событие –

+0

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

ответ

-1

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

Для устранения проблемы у вас должна быть одна функция, которая принимает имя изображения или какой-то идентификатор в качестве аргумента. Таким образом, вы используете только одну функцию для каждого изображения.

+0

Почему голос? – Skjaar

+1

BTW Я не дубликатор, но вы отвечаете на вопрос или пытаетесь прокомментировать вопрос? – Jai

+0

Мне нравится думать, что это ответ. Не предоставление всего решения. Квесты показывают, что пользователь не практикует повторное использование кода, из-за чего я предполагаю, что отсутствуют фундаментальные шаги, которые хорошо подходят при обучении. Не может знать все, начиная с самого начала? Я отвечаю, что пользователь должен иметь другой подход, чем тот, который у него есть сейчас. Для написания функции он сам или с помощью lib не имеет значения, его как решать проблему, которая важна. – Skjaar

0

Изменить все ваши изображения, чтобы использовать класс вместо идентификаторов, таких как:

<input type="image" class="goTo" src="../images/cocohouse/accommodation/thumbnails/tn_CHfood_29.png" width="80" height="60"> 

Затем, сделайте следующее:

$('.goTo').click(function(event) { 
    event.preventDefault(); // you dont need this line for your code, see comment below for explanation 
    var cur = $('.goTo').index($(this)); 
    $('#acc_sl').cycle(cur); 
}); 
+0

имел .. ошибка «Undefined $ это ... Удалены $ из индекса ($ это) Теперь ..... вар дворняжка = $ ('GOTO') индекс (это); .. ....... Работы OK !! Thanks –

+0

Работы без ...... return false; –

+0

Да, мой плохой, должен был быть либо '$ (this)', либо 'this', обновленный выше. Как FYI, 'return false' обычно является попыткой предотвратить какое-либо действие по умолчанию.Например, если вы должны привязать обработчик кликов к ссылке, браузер может перейти к этой ссылке до того, как код в обработчике будет запущен. Однако правильным способом сделать это будет вызов 'event.preventDefault();' в верхней части обработчика. Обратите внимание, что я добавил параметр «event» в обработчик: '... function (event) {', этот параметр доступен по умолчанию в обработчиках, но вы должны его перечислить, если хотите его использовать. – DelightedD0D

Смежные вопросы