我需要制作一个按钮,当按下按钮时,会触发一个按钮 重复jQuery.post()事件。第二次事件应在第一次事件发生后500ms触发,此后应立即触发一连串的快速事件。
换句话说,按钮应模拟按遥控器的音量调高/调低按钮时发生的情况。我怀疑可能有一个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 :(得分:2)
正如this回答的那样, 你可以处理 mousedown 事件。
当用户点击按钮时,将调用mousedown事件 当用户离开按钮时,它将触发 mouseleave 或 mouseup 事件。
你可以做的是在 mouseup 之后启动一个计时器, 并在每个计时器迭代上发布数据。 你可以在 mouseup 或 mouseleave 上停止计时器。