jquery set单击元素的选定位置

时间:2017-01-16 13:38:49

标签: javascript jquery triggers

我有一个非常有趣的任务 - 我有一个带音量条的外部播放器,我需要模仿点击此音量栏的选定位置。

如果我点击此音量栏的开头 - 它将是低音量。 如果我点击此音量栏的末尾 - 它将是高音量。

我知道我可以触发所有元素的触发器(我的情况$(".volume_bar").trigger("click");中的整个音量条)但是如何触发元素某个部分的单击触发器?例如 - 像$(".volume_bar").trigger("click": {left:30%});

这样的东西

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

您需要获取元素的位置,然后在所需位置触发单击。您可以使用jQuery的offset(),然后您可以按事件here设置事件的pageX和pageY参数。

要在给定位置触发事件,代码应如下所示:

var $element = $('#element')
$element.width() // get the width
$element.height() // get the height

var event = new $.Event('click');
event.pageX = $element.offset().left + $element.width() * 0.5
event.pageY = $element.offset().top + $element.height() * 0.5

$element.trigger(event) // this should click in the middle

警告未经测试!!!无论如何,你得到了要点......