【发布时间】:2014-03-25 19:29:50
【问题描述】:
所以我正在构建一个 moch 网站,我正在添加一个使用 CSS3 和 JavaScript 进行图像缩放的东西,所以首先是我的代码。
HTML:
<img id="img" onclick="image()" class="contentimgleft" src="test.jpg">
CSS:
.contentimgleft {
float: left;
margin: 5px 5px 5px 10px;
background-color: #888888;
width: 25%;
height: 25%;
-webkit-transition: all .4s linear;
-moz-transition: all .4s linear;
-o-transition: all .4s linear;
-ms-transition: all .4s linear;
transition: all .4s linear;
}
.contentimgleftl {
float: left;
margin: 5px 5px 5px 10px;
background-color: #888888;
width: 97%;
height: 98%;
-webkit-transition: all .4s linear;
-moz-transition: all .4s linear;
-o-transition: all .4s linear;
-ms-transition: all .4s linear;
transition: all .4s linear;
}
JS:
function image() {
if (document.getElementById("img").className.match(/(?:^|\s)contentimgleft(?!\S)/) ) {
document.getElementById("img").className="contentimgleftl";
} else {
document.getElementById("img").className="contentimgleft";
}
}
现在这可以完美运行,直到您拥有多个图像。所以我正在寻找的是一个更好的系统,可以达到相同的结果。我已经尝试了几件事,但它不断回归到具有适用于所有图像但单独缩放每个图像的 JavaScript 代码。
.contentimgleft 和 .contentimgleftl 除了 width 和 height 之外是相同的。所以我希望有某种方法可以将这两种样式更改为具有相同 JavaScript 代码的单个图像?
还要注意,它也是一个用于右浮动图像的类,但为了简单起见,我省略了它们,因为它们完全相同。
我尝试制作一个 jsfiddle,但由于某种原因它不喜欢 (/(?:^|\s) 位。
【问题讨论】:
标签: javascript html css