这段js脚本在chrome上不能实现,在火狐和IE下已经实现,如何修改能使其支持chrome?

#gotopbtn {
width:53px;
height:33px;
background:#fff;
position:fixed;
bottom:14px;
right:27px;
display:none;
cursor:pointer;
font-size:14px;
line-height:30px;
border:1px solid #aaa;
background-image: url(../images/backtotop.gif);
}

<script type="text/javascript">
backTop=function (btnId){
var btn=document.getElementById(btnId);
var d=document.documentElement;
window.onscroll=set;
btn.onclick=function (){
btn.style.display="none";
window.onscroll=null;
this.timer=setInterval(function(){
d.scrollTop-=Math.ceil(d.scrollTop*0.1);
if(d.scrollTop==0) clearInterval(btn.timer,window.onscroll=set);
},10);
};
function set(){btn.style.display=d.scrollTop?'block':"none"}
};
backTop('gotopbtn');
</script>
</div>

backTop = function(btnId) {
var btn = document.getElementById(btnId);
var d = document.documentElement;
var webkit = /webkit/i.test(navigator.userAgent);

window.onscroll = set;
btn.onclick = function () {
btn.style.display = "none";
window.onscroll = null;
this.timer = setInterval(function() {
webkit
? document.body.scrollTop
-= Math.ceil(document.body.scrollTop * 0.1)
: d.scrollTop -= Math.ceil(d.scrollTop * 0.1);
if(pageYOffset == 0)
clearInterval(btn.timer, window.onscroll = set);
}, 10);
};

function set(){
btn.style.display = (d.scrollTop || pageYOffset) ? 'block' : "none"
}
};

追问

感谢回答,但是还是没有实现,连火狐下也不能实现了

追答

Javascript 代码是没有错误的,我在 IE, Firefox, Chrome, Opera, Safari 下面全测试了,正常。
应该是你现在的 CSS 或 Javascript 有冲突或错误。你复制下面的代码,新建 html,不需要图片,直接测试。如果对了,再自己看看把代码移到你的页面中。

#gotopbtn {
width:53px;
height:33px;
background:#fff;
position:fixed;
bottom:14px;
right:27px;
display:none;
cursor:pointer;
font-size:14px;
line-height:30px;
border:1px solid #aaa;
background-image: url(../images/backtotop.gif);
}

backTop = function(btnId) {
var btn = document.getElementById(btnId);
var d = document.documentElement;
var webkit = /webkit/i.test(navigator.userAgent);

window.onscroll = set;
btn.onclick = function () {
btn.style.display = "none";
window.onscroll = null;
this.timer = setInterval(function() {
webkit
? document.body.scrollTop
-= Math.ceil(document.body.scrollTop * 0.1)
: d.scrollTop -= Math.ceil(d.scrollTop * 0.1);
if(pageYOffset == 0)
clearInterval(btn.timer, window.onscroll = set);
}, 10);
};

function set(){
btn.style.display = (d.scrollTop || pageYOffset) ? 'block' : "none"
}
};

window.onload = function() {
backTop("gotopbtn");
}

go top
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p
p

温馨提示:内容为网友见解,仅供参考
第1个回答  2014-02-02
js脚本可以参考W3C标准 http://www.w3schools.com/js/

videojs在chrome中无法正常显示,火狐和ie11可以,怎么回事
具体两种解决方法如下:第一种:1,Video.js 是一个通用的在网页上嵌入视频播放器的 JS 库,Video.js 自动检测浏览器对 HTML5 的支持情况,2,如果不支持 HTML5 则自动使用 Flash 播放器。第二种:1,通过使用原生的video标签,然后再属性中没用使用controls属性,2,然后再自己百度了暂停、播放、...

一段JS代码在IE和火狐中都正常,在chrome中没显示,高手们给看看是什么...
您好!很高兴为您答疑!其中document.documentElement.scrollTop + document.body.scrollTop;就是处理兼容性的关键,当页面加入DTD标示后 document.documentElement.scrollTop的值在IE和FF下正常,但document.body.scrollTop一直 为0。在Chrome下就反过来了。您可以在火狐社区了解更多内容。希望我的回答对您有所...

videojs在chrome中无法正常显示,火狐和ie11可以,怎么回事
不同的浏览器在使用上没有区别,我推荐使用IE浏览器,理由如下:1、任何浏览器都要运行在Windows平台上。2、大部分第三方浏览器的研发都需要与微软操作系统兼容。3、IE浏览器和微软操作系统(都是微软公司研发的程序)搭配使用时冲突更少,结合更紧密,运行更和谐。4、我用IE浏览器到现在未发现重大隐患...

...以下这段js代码 火狐可以实现 IE8和Google Chrome都没有效果呢?单击...
看了一下您的代码,发现您并没有正确进行事件的绑定,或者说您的写法不规范。建议您尝试如下写法:document.getElementById("test").onchange = function(){alert(this.options[this.selectedIndex].title);};通过捕捉select的onchange事件去触发获取option的title 希望我的回答对您有所帮助,如有疑问,欢...

JS复制剪切板代码在Chrome下无效,有合适的代码吗?
并修改Data。动手实验了下,通过console.debug查看chrome和firefox的event对象,会发现event里面有一个clipboardData对象,所以后面的事情就不难了。看如下Firefox的截图就知道了:参考资料 实现JS复制、粘贴,Chrome\/Firefox下可用.csdn[引用时间2018-1-3]

浏览器怎么禁用javascript(浏览器怎么禁用插件)
1、在地址栏输入?chrome:\/\/settings?,如下图 2、点击最下方的“显示高蠢慧级设置”3、点搜悉击隐私设置中的“内容设置”4、再弹出的面板中选择允许或者不允许Javascript 选择好后点击完成即可 四、火狐浏览器 1、打开浏览器在地址栏输入about:config?,然后点击“我了解此风险”2、在搜索栏输入?

解决Flash插件已被屏蔽的问题(谷歌、火狐、IE、Edge)
Firefox 火狐浏览器 在火狐浏览器中,可按以下步骤操作:1. 点击浏览器的安全图标。2. 点击绿框内的箭头,选择“更多信息”。3. 在权限中,不勾选“使用默认设置”,然后勾选“运行Flash”下的“允许”选项。4. 通过右上角菜单键打开“附加组件”,点击“插件”,选择Shockwave Flash,点击“选项”...

浏览器javascript怎么开启(浏览器的javascript怎么打开)
1、在地址栏输入?chrome:\/\/settings 2、点击最下方的“显示高级设置”3、点击隐私设扒散置中的“内容设置”4、再春老氏弹出的面板中选择允许或者不允许Javascript,点击完成 四、火狐浏览器 1、打开浏览器在地址栏输入about:config?,然后点击“我了解此风险”2、在搜索栏输入?然后第一样默认是true(...

js 报错,chrome.在火狐浏览器问题
在谷歌浏览器中,event.returnValue是不赞成使用的,用event.preventDefault() 代替,做个判断,如果是谷歌浏览器,如果是IE,如果是火狐,如果是其他

浏览器兼容性问题,火狐可以,谷歌不可以
我觉得可能是因为火狐、谷歌对获取对象或者event对象的方法有差别,要不用jquery,还挺好用的。或者你可以多贴一些代码不,可以直接复制调试的

相似回答