代码之家  ›  专栏  ›  技术社区  ›  Leo

jQuery imgAreaSelect隐藏/显示?

  •  6
  • Leo  · 技术社区  · 14 年前

    我一直在试图隐藏和显示 imgAreaSelect

    我试过:

        var ias = $('#photo').imgAreaSelect({ instance: true });
        ias.setOptions({ show: false });
    

        $('div.imgareaselect-selection').hide();
        $('div.imgareaselect-border1').hide();
        $('div.imgareaselect-border2').hide();
        $('div.imgareaselect-border3').hide();
        $('div.imgareaselect-border4').hide();
        $('div.imgareaselect-handle').hide();
        $('div.imgareaselect-outer').hide();
    

    但这似乎有点麻烦,我相信一定有更好的办法。

    5 回复  |  直到 14 年前
        1
  •  6
  •   BBonifield    14 年前

    更改选项后需要更新实例- http://odyniec.net/projects/imgareaselect/usage.html#api-methods

    var ias = $('#photo').imgAreaSelect({ instance: true });
    ias.setOptions({ hide: true });
    ias.update();
    
        2
  •  6
  •   davehauser    14 年前

    我从来没有用imgAreaSelect自己,但在 docs 别无选择 show hide . 你试过这个吗?

    var ias = $('#photo').imgAreaSelect({ instance: true });
    ias.setOptions({ hide: true });
    ias.update();
    

    正如BBonifield所指出的,似乎你必须打电话 update() 更改选项后。

    或者,您可以使用:

    $('div[class^=imgareaselect-]').hide();
    

    这将选择所有 div 具有以“imageareaselect-”开头的类并将其隐藏的。

        3
  •  1
  •   Rob Clarkson    10 年前

    API中有一个取消选择函数,请按如下方式使用:

    var ias = $('#photo').imgAreaSelect({ instance: true });
    ias.cancelSelection();
    

    繁荣!

        4
  •  0
  •   xbakesx    12 年前

    您不必返回实例并调用API方法。您可以简单地:

    var ias = $('#photo').imgAreaSelect({ hide: true });
    

    您可以在此处看到所有其他方法调用(官方文档): http://odyniec.net/projects/imgareaselect/usage.html

        5
  •  0
  •   kheya    9 年前

    我尝试了这里提到的所有选择。什么都没用。

    最后我手动做了如下操作:

    $(".imgareaselect-selection").hide();
    $(".imgareaselect-outer").hide();
    $(".imgareaselect-border1").hide();
    $(".imgareaselect-border2").hide();
    

    我的页面结构很复杂。这似乎起了作用。