我有一个页面,其中包含许多隐藏的div,只需单击相应的按钮即可切换。非常基本的jQuery东西。现在,我想要做的是在这些div之一中有一个相对超链接(例如)打开另一个div并将页面滚动到此元素。当链接未连接到jQuery中的事件时,我可以将滚动显示为可见,并且当链接连接到jQuery时我可以打开div。但我想同时做两件事!
这是我的处理程序
$('.B2BHL').click(function() {
var month = this.href.substring(this.href.indexOf('#') + 1);
//$('#' + month + 'div').show();
window.location.href = this.href;
});
当show()
来电被注释掉时,它会滚动。取消注释后,它会打开div,但不会滚动到它
我在Stack Overflow上发现了以下两个问题:
但两者都不适合我。我正在使用IE 11.任何人都可以提出建议吗?
由于
答案 0 :(得分:0)
我想问题可以出现在show()
函数上,您可以尝试稍微修改一下代码,以便在 show 功能完成后更改window.location.href
,像:
$('.B2BHL').click(function() {
var month = this.href.substring(this.href.indexOf('#') + 1);
var href = this.href;
$('#' + month + 'div').show({
complete: function() {
window.location.href = href;
}
});
});
答案 1 :(得分:0)
实际上,我回过头来看了我发布的第一个链接(Scroll to a div using jquery),再次尝试了,并且有效了
$('.B2BHL').click(function() {
var idx = this.href.indexOf('#');
var month = this.href.substring(this.href.indexOf('#') + 1);
var href = this.href;
$('#' + month + 'div').show({
complete: function() {
goToByScroll(month + 'div');
}
});
});
对不起,我还没有做足够的工作。感谢所有回复的人的帮助