Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.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
JQuery UI可选-如何自定义其行为_Jquery_Jquery Ui - Fatal编程技术网

JQuery UI可选-如何自定义其行为

JQuery UI可选-如何自定义其行为,jquery,jquery-ui,Jquery,Jquery Ui,我希望确保可选择的应用程序具有以下非常原始的行为: 完全禁用套索选择,仅切换触摸的对象(单击) 完全按照按下Ctrl键时所做的操作,例如取消选择选定项和选择未选定项,并让用户不必按住Ctrl键 我试图构建一个篮子,当它打开时,它的内容被显示,一些项目被突出显示。然后用户选择更多或取消选择其他,提交表单。就这些 我与Selective斗争了相当长的一段时间,这是一个非常聪明的脚本,但我似乎无法实现这一基本要求。当显示表单时,用户需要按住Ctrl键,否则已选择的项目将丢失。前几天我回答了类似的问题,

我希望确保可选择的应用程序具有以下非常原始的行为:

  • 完全禁用套索选择,仅切换触摸的对象(单击)
  • 完全按照按下Ctrl键时所做的操作,例如取消选择选定项和选择未选定项,并让用户不必按住Ctrl键
  • 我试图构建一个篮子,当它打开时,它的内容被显示,一些项目被突出显示。然后用户选择更多或取消选择其他,提交表单。就这些


    我与Selective斗争了相当长的一段时间,这是一个非常聪明的脚本,但我似乎无法实现这一基本要求。当显示表单时,用户需要按住Ctrl键,否则已选择的项目将丢失。

    前几天我回答了类似的问题,我认为这解决了问题的第一部分-。这允许左键单击或套索选择/取消选择,而无需按Ctrl键

    然而,回顾过去,我为这个问题创建了

    tolerance: 'fit'
    
    对可选择者来说,它似乎通过套索禁用了选择,我认为这解决了你问题的第2部分

    最后,如果使用jQueryUI主题,还需要覆盖套索样式。有关的主题规则是:

    .ui-selectable-helper { position: absolute; z-index: 100; border:1px dotted black; }
    
    什么的

    .ui-selectable-helper { display:none }
    
    我应该这样做


    完全不使用可选选项更容易:

    $('ul > li').click(function() {
      $(this).toggleClass('ui-state-highlight');
    });
    

    这和你说的不一样。据我所知,
    tolerance:“fit”
    是关于套索是否需要包围一个元素来选择它。@Sahuagin对于这个问题,它确实有帮助,因为很难开始选择项目并设法用套索完全包围一个项目。那时候显然已经足够好了。这不是一个防弹的解决方案,因为,根据可选项目的大小和形状,可能仍然可以套索。@andyb好吧,对我来说,在chrome中,你的演示甚至不起作用。点击并没有选择任何东西,如果我拖动一个足够大的区域,我仍然可以套住东西。@Sahuagin
    tolerance:“fit”
    不在演示的设置中(我承认这不是一个理想的“演示”),但我的回答是“如果你添加…”。因此,添加它将删除套索选择,如我所述。该演示在Windows Chrome 43.0.2334.0上运行良好。您使用的是哪种Chrome?@andyb
    tolerance:“fit”
    在更新的演示中。昨天不起作用,但现在似乎起作用了。