Событие OnClick, запускающее функцию javascript только после двойного щелчка

0

Я новичок в этом деле для веб-программирования, и у меня возникают проблемы с событием onclick. Я даже не знаю, лучше ли использовать "onclick()", но он работает до сих пор для меня.

В этот момент у меня есть страница с div, в которую я загружаю другую страницу. Этот контент изменяется в зависимости от изменения хеша, когда я выбираю параметры на панели инструментов, используя этот кусок js

function loadcontent(toload){
   $('#browsediv').load("content/addimagecontent.php?"+toload);
}

Каждая функция js вызывается с главной страницы, а не с одной.

Теперь моя проблема заключается в том, что в загруженном контенте у меня есть несколько страниц результатов, и у меня есть div со словом Next, напечатанным на нем, и событие onclick, которое должно заставить страницу изменить свой атрибут страницы:

echo "<div onClick='loadcontent(\"page=".$nextpage."\")'>Next</div>";

У меня также есть то же самое, чтобы привести вас к предыдущей странице.

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

Я смотрю вокруг, но никто, кажется, не ответил ни на что, что приспосабливается к моей проблеме, если у кого-то есть, пожалуйста, простите меня, поскольку английский не мой родной язык, и я иногда не знаю, как лучше искать что-то, Спасибо за прочтение :)

  • 0
    возможно дублирование javascript для включения ввода при двойном щелчке
  • 0
    загруженный контент использует куки / сессии?
Показать ещё 2 комментария
Теги:

1 ответ

2
Лучший ответ

Вместо добавления onclick добавьте атрибут id. Затем с помощью jquery вы можете сделать что-то вроде этого:

<div id="yourDiv">Next</div>

$("#yourDiv").click(function() {
    loadcontent(toload)
})

Я не совсем уверен, что это "законно", но вы можете добавить переменную $nextPage в качестве атрибута.

<div id="yourDiv" data-page="<?php echo $nextPage;?>">Next</div>

Затем вы будете использовать следующее

$("#yourDiv").click(function() {
    var page = $(this).attr('data-page');
    loadcontent(page);
})
  • 1
    data-page будет действительной, затем получите ее, используя: var page = $(this).data('page'); или да, вы также можете использовать: $(this).attr('data-page'); , Тем не менее, я не уверен, как это решит проблему ОП
  • 0
    мы не знаем, исправит ли это проблему OP, потому что нет способа проверить его код. Это просто «обходной путь», позволяющий исключить странно выглядящий код, который он написал (не говоря, что мой код всегда элегантен) :)
Показать ещё 2 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню