为什么我的onload中没有调用我的javascript?

时间:2014-02-16 04:26:05

标签: javascript jquery html css

我将onload设置为调用自定义函数的函数

在函数中我的窗口应滚动到通过散列后的值指定的位置 - 但是我没有看到我的控制台记录我的调试文本也没有页面移动 - 我做错了什么?

<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script>
<script type="text/javascript">
window.onload = function()
    {
        scrollToLocation();
    };
function scrollToLocation()
{
    console.log("hi");
    var x = location.hash;
    console.log(x);
    $('html, body').animate(
    {
        scrollTop: x
    }, 500);
    var d = document.createElement("div");
    d.style.height = "101%";
    d.style.overflow = "hidden";
    document.body.appendChild(d);
    setTimeout(function ()
    {
        d.parentNode.removeChild(d);
    }, 10);
    return false;
}
</script>

1 个答案:

答案 0 :(得分:2)

行。

我无法弄清楚为什么窗口加载功能没有触发。

尝试使用文档就绪处理程序

$(function(){
     scrollToLocation();
})

至于hashchange事件,请考虑查看this plugin