滚动到活动标签

这个问题是基于我的上一个问题。

显示或显示可见的活动标签

我必须解决一些问题,所以我已经解决了。 但我仍然无法使其正常工作。

就像我想滚动左右活动/点击标签来显示。 请看看jsfiddle的例子。 例如:当我点击溢出的标签5时,它应显示可见。 然后从1到4将溢出(隐藏)所以现在如果我点击2(2点击)然后它应滚动到右边并显示它可见。 实际上,将有N个列表(li)元素。

我刚发现不知道为什么但是jsfiddle示例在IE上不起作用。

谢谢…

的jsfiddle

$(document).on('click', '.liClicked', function () { var idValue = ($(this).attr('id')); console.log(idValue); var idValues = ($(".element ul li#" + idValue)); console.log(idValues); // $(idValues).css('left','-50px'); $('.element').animate({ "left": "-=50px", }, "slow") }); $("#right").click(function () { var calcs = ($('ul li#tab1').width()); $(".element").animate({ "left": "+=" + calcs, }, "slow"); }); $("#left").click(function () { $(".element").animate({ "left": "-=50px" }, "slow"); }); 

试试这个:

  $(document).on('click', '.liClicked', function() { var idValue = ($(this).attr('id')); console.log(idValue); var idValues = ($(".element ul li#" + idValue)); console.log(idValues); // $(idValues).css('left','-50px'); var me = $(this); $('.element').animate({ "left": $('li#' + me.prop('id')).position().left * -1 , }, "slow") }); 

此外,不建议使用具有相同ID的两个元素