Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 我如何在一个已经有jQuery插件监听点击的区域内检测点击?_Javascript_Jquery_Coffeescript_Jquery Bar Rating - Fatal编程技术网

Javascript 我如何在一个已经有jQuery插件监听点击的区域内检测点击?

Javascript 我如何在一个已经有jQuery插件监听点击的区域内检测点击?,javascript,jquery,coffeescript,jquery-bar-rating,Javascript,Jquery,Coffeescript,Jquery Bar Rating,我在用电话。插件的一切都很好(它有效地将一个选择列表变成了一系列可点击的图像),但是当用户从插件控制的选择列表中选择某个内容时,我想在页面的其他地方“显示”一个隐藏字段 明确说明我正在尝试做什么: 当用户更新Bar rating显示的评级时,我想显示一个保存按钮以确认更改。如果用户尚未更改评级,我不希望显示“保存”按钮 尝试1: $('#my-div).click -> $('#div-to-be-revealed').toggleClass('invisible') $("#my-

我在用电话。插件的一切都很好(它有效地将一个选择列表变成了一系列可点击的图像),但是当用户从插件控制的选择列表中选择某个内容时,我想在页面的其他地方“显示”一个隐藏字段

明确说明我正在尝试做什么

当用户更新
Bar rating
显示的评级时,我想显示一个保存按钮以确认更改。如果用户尚未更改评级,我不希望显示“保存”按钮

尝试1

$('#my-div).click ->
  $('#div-to-be-revealed').toggleClass('invisible')
$("#my-div").bind "DOMSubtreeModified", ->
  $('#div-to-be-revealed').toggleClass('invisible')
但是代码永远不会触发,因为插件正在监视div的子对象(实际要单击的对象),并且在代码有机会运行之前,它会使用“click”来执行一些操作

尝试2

$('#my-div).click ->
  $('#div-to-be-revealed').toggleClass('invisible')
$("#my-div").bind "DOMSubtreeModified", ->
  $('#div-to-be-revealed').toggleClass('invisible')
只要修改了
条评级
插件修改的div,就会触发上述代码。问题是,该事件在页面初始加载期间被触发数次(因为插件正在更新元素),并且在鼠标悬停在插件在悬停时修改的div元素上时被触发


在不修改插件代码的情况下,我如何检测用户何时更新了由
条形码评级
插件管理的“选择列表”中的值?

只需使用回调方法即可:

回调

onSelect:选择分级时激发的函数(值、文本)

onClear:清除评级时激发的函数(值、文本)

onDestroy:当等级被破坏时触发的函数(值、文本)

我相信您会使用:
onSelect
callback

$('#example-e').barrating('show', {
        onSelect:function(value, text) {
        //your code goes here.
        $('#div-to-be-revealed').toggleClass('invisible')
        alert('Selected rating: ' + value);
    }
});