jQuery同位素选择/扩展内部超链接



这个需要帮助,我已经绞尽脑汁好几天了

参考这个演示http://jsfiddle.net/8QkEw/313/,我如何修改我的代码,使内部超链接工作,而展开/选中itemSelector保持展开/选中

$(function(){

  var $container = $('#container'),
      $items = $('.item');
  $container.isotope({
    itemSelector: '.item',
    masonry: {
      columnWidth: 100
    },
    getSortData : {
      selected : function( $item ){
        // sort by selected first, then by original order
        return ($item.hasClass('selected') ? -500 : 0 ) + $item.index();
      }
    },
    sortBy : 'selected'
  })
  $items.click(function(){
    var $this = $(this);
    // don't proceed if already selected
    var $previousSelected = $('.selected');
    if ( !$this.hasClass('selected') ) {
      $this.addClass('selected');
    }
    $previousSelected.removeClass('selected');
    // update sortData for new items size
    $container
      .isotope( 'updateSortData', $this )
      .isotope( 'updateSortData', $previousSelected )
      .isotope();
  });
});

只有当用户点击内部超链接时才不会最小化展开/选中的框;点击其他区域仍然会触发$previousSelected.removeClass('selected');

提前感谢。

停止事件在链接上的传播:

$('.item a').click(function(event){
    event.stopPropagation();
});

下面是一个演示:http://jsfiddle.net/VCmNU/

您可以添加以下处理程序

 $('.item a').click(function(e){
     e.stopPropagation();
 });

最新更新