这段代码直接可以运行,但是加了<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
这样的声明文件就不能正常运行了,请教大家该如何修改?
<div id="div1" style="cursor:hand;position:absolute;width:500;height:190;overflow:hidden;border:1 solid red" onmouseover="clearTimeout(scrl);" onmousemove="getpos()" onmouseout="change(1);"><img src=http://www.yihaonet.net/images/out500b.jpg onload="change(1);"></div>
<script>
var scrl,direction="right";
var x,xold,xdiff, i=1;
function change(start){
if(direction == "right"){
if(div1.scrollTop+190 < div1.scrollHeight){
div1.scrollTop += 190;
}
else{
div1.scrollTop = 0;
}
}
else{
if(div1.scrollTop-190 > 0){
div1.scrollTop -= 190;
}
else{
div1.scrollTop = div1.scrollHeight;
}
} if(start) scrl = setTimeout("change(1)",100);
else clearTimeout(scrl);
} function getpos(){
x = event.clientX;
xdiff = x - xold;
xold = x;
if(xdiff>0) direction = "right";
if(xdiff<0) direction = "left";
change(0);
} </script>
这样的声明文件就不能正常运行了,请教大家该如何修改?
<div id="div1" style="cursor:hand;position:absolute;width:500;height:190;overflow:hidden;border:1 solid red" onmouseover="clearTimeout(scrl);" onmousemove="getpos()" onmouseout="change(1);"><img src=http://www.yihaonet.net/images/out500b.jpg onload="change(1);"></div>
<script>
var scrl,direction="right";
var x,xold,xdiff, i=1;
function change(start){
if(direction == "right"){
if(div1.scrollTop+190 < div1.scrollHeight){
div1.scrollTop += 190;
}
else{
div1.scrollTop = 0;
}
}
else{
if(div1.scrollTop-190 > 0){
div1.scrollTop -= 190;
}
else{
div1.scrollTop = div1.scrollHeight;
}
} if(start) scrl = setTimeout("change(1)",100);
else clearTimeout(scrl);
} function getpos(){
x = event.clientX;
xdiff = x - xold;
xold = x;
if(xdiff>0) direction = "right";
if(xdiff<0) direction = "left";
change(0);
} </script>
解决方案 »
- 5秒钟跳转到div中的id页面
- 联通劫持网易广告,有图有真相 —— 浅谈各种流量劫持防范措施
- 如何用js监听一个元素的属性变化?
- 如何弹出指定大小窗口(不要全屏的),并且窗口无关闭按钮?
- if(!(/^(http|https):\/\/.+/.test(Trim(fieldName.value))))这样验证怎样改一下 忽略http的大小写
- JS操作body
- 为什么attachevent没有生效?
- 求一个像Windows资源管理器这样的多级菜单
- 如何取得焦点所在的位置?
- Cannot read property 'insertBefore' of null
- 这段js 错在哪里?
- 以下代码为何在第一次输入的时候是无效的,要输入一次之后再次输入才有效果
加了 DOCTYPE后,浏览器会运行在标准模式下。
这时候,你没有单位的长度值会失效。<!DOCTYPE HTML>
<div id="div1" style="cursor:hand;position:absolute;width:500px;height:190px;overflow:hidden;border:1px solid red"
onmouseover="clearTimeout(scrl);" onmousemove="getpos()" onmouseout="change(1);">
<img src="http://www.yihaonet.net/images/out500b.jpg" onload="change(1);">
</div>
<script>
var scrl,direction = "right";
var x,xold,xdiff, i = 1;
function change(start) {
if (direction == "right") {
if (div1.scrollTop + 190 < div1.scrollHeight) {
div1.scrollTop += 190;
} else {
div1.scrollTop = 0;
}
} else {
if (div1.scrollTop - 190 > 0) {
div1.scrollTop -= 190;
} else {
div1.scrollTop = div1.scrollHeight;
}
}
if (start) scrl = setTimeout("change(1)", 100); else clearTimeout(scrl);
}
function getpos() {
x = event.clientX;
xdiff = x - xold;
xold = x;
if (xdiff > 0) direction = "right";
if (xdiff < 0) direction = "left";
change(0);
}
</script>