2016-05-01 2 views
-2

Мне нужно сделать кнопку, которая при нажатии вызывает событие jQuery.post() повторно. Второе событие должно быть инициировано через 500 мс после первого, после чего впоследствии должен запускаться залп событий быстрого огня.Имитировать кнопки регулировки громкости с помощью jQuery

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

вот код:

jQuery("projTable").click(function(event) { 
var contentPanelId = jQuery(this).attr("id"); 
}); 
$("[class*=triggerZone]").children().click(function(event) 
    {var buttonArray = [event.target.id, event.target.className, event.target.parentNode.parentNode.parentNode.id]; 
    var triggerObject = 
     {eventTargetId: event.target.id, 
     eventTargetClassName: event.target.className.split(" "), 
     eventTargetParentNodeParentNodeId: event.target.parentNode.parentNode.id, 
     eventTargetParentNodeParentNodeParentNodeId: event.target.parentNode.parentNode.parentNode.id}; 
    processAction(triggerObject);}); 
}); 

function processAction(triggerObject) 
{ $.ajax({ 
type: "POST", 
url: '../json_api/WohnZimmerControl.php', 
data: triggerObject, 
} 
}); 
+0

ОК, хорошо, я вижу, что я собираю downvotes с впечатляющей скоростью. Кто-нибудь, по крайней мере, хотел бы объяснить, что так обидно в моем вопросе? – aag

+1

@aag См. Комментарий adeneo. Вы не можете ожидать, что мы напишем вам код. Покажите нам, что вы пробовали. Есть много вещей, которые вы можете объединить, чтобы достичь того, чего вы хотите: вам просто нужно собрать свои мысли и сделать домашнюю работу самостоятельно. SO - это * не * служба написания кода. – Terry

+0

ну, я написал кнопку с прикрепленным классом CSS. Я использую имя класса для сообщения события jQuery post на сервер PHP, который затем перемещает громкость вверх и вниз. Все это хорошо работает, но не повторяется. Я вложу код здесь: – aag

ответ

2

Как сказал в ответ this, вы можете справиться с MouseDown событие.

Когда пользователь нажимает на кнопку, которая будет вызывать MouseDown событие и когда пользователь оставить кнопку будет срабатывать MouseLeave или MouseUp событий.

Что вы можете сделать, это запустить таймер после mouseup, и опубликовать данные на каждой итерации таймера. вы останавливаете таймер на mouseup или mouseleave.

+0

Спасибо @Ygalbel. Я весьма признателен. Это очень помогает - и это именно тот совет, который я надеялся прочитать. Приятно видеть, что сообщество SO не состоит исключительно из снисходительных опекунов-ортодоксии и хобби-полицейских! – aag

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