为了简单起见,我不想使用 jquery。我有三个网站,一页循环浏览。我希望每个网页都按不同的标量值进行缩放。我尝试对每个页面应用一个类,但使用 switch 语句,但它不起作用,它只会停留在第三种样式上。我不关心效率,它只会滚动三个页面,因此可以进行硬编码。谢谢
<style>
#wrap { width: 1390px; height: 690px; padding: 0; overflow: hidden; }
#frame.first { width: 1390px; height: 690px; border: 0px solid black; }
#frame.first { zoom: 2; -moz-transform: scale(2); -moz-transform-origin: 0 0; }
#frame.second { width: 1395px; height: 695px; border: 0px solid black; }
#frame.second { zoom: 4; -moz-transform: scale(1); -moz-transform-origin: 0 0; }
#frame.third { width: 1395px; height: 695px; border: 0px solid black; }
#frame.third { zoom: .5; -moz-transform: scale(1); -moz-transform-origin: 0 0; }
</style>
<script type="text/javascript">
var frames = Array('http://www.google.com, 5,
'http://www.yahoo.com', 5,
'http://www.ebay.com', 5);
var i = 0, len = frames.length;
function ChangeSrc()
{
if (i >= len) { i = 0; }
switch(i)
{
case 0:
document.getElementById('frame').className = 'first';
document.getElementById('frame').className
case 1:
document.getElementById('frame').className = 'second';
document.getElementById('frame').className
case 2:
document.getElementById('frame').className = 'third';
document.getElementById('frame').className
}
document.getElementById('frame').src = frames[i++];
setTimeout('ChangeSrc()', (frames[i++]*1000));
}
window.onload = ChangeSrc;
</script>
</head>
<body>
<div id="wrap">
<iframe src="" class="" id="frame" scrolling="no" frameborder="0"></iframe>
</div>
</body>
</html>
最佳答案
您需要 break 语句来防止 switch 跳转到下一个语句。
switch(i)
{
case 0:
document.getElementById('frame').className = 'first';
break;
case 1:
document.getElementById('frame').className = 'second';
break;
case 2:
document.getElementById('frame').className = 'third';
break;
}
关于javascript - 从 javascript 更改 CSS 样式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5008953/