Вопрос про вызов события onClick
Есть кнопка. к ней привязано событие onClick.
Как грамотно сделать так, что если пользователь не счелкнул сам по кнопке, через к примеру 15 секунд, событие OnClick само вызвалось. Заранее благодарю за помощь новичку! |
Легче вызвать через 15 секунд функцию, которая срабатывает по событию onclick.
window.onload = function() { setTimeout(функция_срабатывающая_по_onclick, 15000); }; если конечно объект-событие не нужен |
Там все на jQuery сделано, в котором к сожаления я пока вообще никаках не соображаю. и функция onClick задается следующим образом в коде библиотеке
jQuery(".next",p).click(function() { .... .... .... } И помоему в этом примере речь идет как раз о создании объекта-события, который создается я так понимаю в этом участке кода <script language="javascript" type="text/javascript"> jQuery.noConflict(); jQuery(document).ready(function(){ jQuery(".computers_technology").accessNews({ newsHeadline: "", newsSpeed: "slow" }); }); </script> как же в данной ситуации запустить по таймауту это событие? |
jQuery(".next",p).click(function() { .... .... .... } если это из твоего кода, то вызвать событие можно setTimeout(function(){jQuery(".next",p).trigger("click");}, 15000); будет вызвано через 15 секунд |
Цитата:
Вод как добавляется кнопка на которой висит событие onClick(): <a href="" class="next"><img src="/slider/next.gif" width="24" height="24" alt="Next" title="Next" env="images" /></a> То есть в коде скрипта ищется класс next и на него вешается. я так понимаю |
А не работает потому что, структура кода такая.
jQuery.fn.accessNews = function(settings) { ... aNewsSlider.init(settings,this) ...... }; var aNewsSlider = { .... init: function(s,p) { jQuery(".next",p).click(function() { //и как мне сие чудо вызвать } } } И вот так это все создается <script language="javascript" type="text/javascript"> jQuery.noConflict(); jQuery(document).ready(function(){ jQuery(".computers_technology").accessNews({ newsHeadline: "", newsSpeed: "slow" }); }); </script> |
сорри, в первый раз ступил. я не заметил что переменная p тебе недоступна. Такая запись
jQuery(".next",p)означает "выбрать все элементы с классом "next" в контексте p". Если не указывать контекст, то в качестве контекста будет использоваться объект document. все конечно зависит от того что тебе нужно, но попробуй сделать так init: function(s,p) { var imgs = jQuery(".next",p); imgs.click(function() { //и как мне сие чудо вызвать } setTimeout(function(){imgs.trigger("click");}, 15000); } |
Tror, Клево. спасибо. А вот если еще раз захочу крутнутнуть галлерею и пишу
setTimeout(function(){imgs.trigger("click");}, 15000); setTimeout(function(){imgs.trigger("click");}, 15000); то крутиться всего один раз. вместо двух. как это обойти? Заранее благодарю |
setTimeout != sleep
|
прочитай про setInterval
|
Часовой пояс GMT +3, время: 10:58. |