javascript - 使用主题标签打开页面时平滑滚动到 div

标签 javascript jquery

我有这个 JS,它可以工作,但在页面完成加载之前它开始滚动。有没有办法检查页面加载,然后加载以获得平滑的效果?

jQuery(document).ready(function(){
    var href = window.location.href+'#team';
    var splitit = (href.split('#'))[1];
    if(splitit !== "" || splitit !== "undefined"){
        jQuery('html, body').animate({
            scrollTop: jQuery('#'+splitit).offset().top - 50
        }, 2000);
    }
});

另外,splitit 是做什么的?我们可以删除它吗?

最佳答案

split()方法用于将字符串拆分为子字符串数组,并返回新数组。

var str = "How are you doing today?";
var res = str.split(" ");
//result is array [How,are,you,doing,today?]

删除是为了什么? 检查所需的 Splitit 位于 url '#' 符号中或 '#' 后的非空 url。

尝试在页面完全加载(包括图形)时运行加载事件。

jQuery( window ).load(function() {
  // Run code
});

关于javascript - 使用主题标签打开页面时平滑滚动到 div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43598786/

相关文章:

javascript - 正则表达式组结果和或

javascript - Bootstrap 弹出窗口仅从一个链接打开

javascript - 尝试水平对齐倒数计时器(第一次编码/构建)

javascript - 下载带有 http header 的文件

javascript - 更改 HTML 的当前属性,从调用该函数的位置

javascript - 查找包含 `p` 但不包含 `ph` 的所有单词

java - java spring 禁止的 Ajax 删除请求

jquery - 使用 mouseenter 和 mouseleave 悬停

jquery - 保留 jquery 链的空函数

javascript - 非常轻量级的 jQuery 就地编辑解决方案