Javascript 第页没有';t在正确的位置加载;jquery代码怎么用呢?
我有一个带有Javascript 第页没有';t在正确的位置加载;jquery代码怎么用呢?,javascript,jquery,d3.js,Javascript,Jquery,D3.js,我有一个带有d3.js图表的页面,该图表根据片段标识符加载某一年的数据,例如/graph#2014或/graph#2013,等等。页面加载时,jquery代码触发一个按钮按下,该按钮依次呈现一个包含相应数据的图表。下面是触发所有这些的代码: function yearHash() { if (location.hash === "") { $("#<%= Date.today.year %>").click(); } else if (location.
d3.js
图表的页面,该图表根据片段标识符加载某一年的数据,例如/graph#2014
或/graph#2013
,等等。页面加载时,jquery代码触发一个按钮按下,该按钮依次呈现一个包含相应数据的图表。下面是触发所有这些的代码:
function yearHash() {
if (location.hash === "") {
$("#<%= Date.today.year %>").click();
}
else if (location.hash === "#2014") {
$("#2014").click();
}
else if (location.hash === "#2013") {
$("#2013").click();
}
else if (location.hash === "#2012") {
$("#2012").click();
}
}
window.onhashchange = yearHash;
window.onload = yearHash;
函数yearHash(){
如果(location.hash==“”){
$(“#”)点击();
}
else if(location.hash==“#2014”){
美元(“#2014”)。单击();
}
else if(location.hash==“#2013”){
$(“#2013”)。单击();
}
else if(location.hash==“#2012”){
$(“#2012”)。单击();
}
}
window.onhashchange=yearHash;
window.onload=yearHash;
问题是,每当加载带有特定哈希的页面时,它都会向下滚动一段时间,然后再向上滚动。我不确定是什么引起的。它不是交易破坏者,但令人恼火。发生这种情况是因为当您有
#2012
时,它会导致浏览器滚动到id所在的第一个元素=“2012
使用类而不是散列。还有,为什么不直接从if
语句调用绘图代码,而不是通过单击按钮来传递它呢。您可以发布其余代码吗?谢谢。这就解决了问题。通过按钮点击的原因是按钮将被突出显示(通过CSS开关)以指示选择的年份。您仍然可以使用类。