可缩放的背景图像,点击后会发生变化
Scalable background images that change on click
我有一个问题,它在某种程度上是这个线程的扩展。
我有我的背景图像工作;但是,我不想让它们自动平铺,而是想将它们链接到浏览器中进行缩放。我知道如何使用CSS创建可扩展的背景图像,但我不知道如何将所述CSS链接到脚本中的backImage变量(可在下面获得,或在从上一个线程跳转后获得),以便它适用于所有各种图像。
<script type="text/javascript">
var backImage = [
"images/street.png",
"images/market.jpg",
"images/building.jpg",
"images/skyscraper.jpg",
"images/gasstation.jpg",
"images/trees.jpg"
];
function changeBGImage(whichImage) {
if (document.body){
document.body.style.backgroundImage = 'url('+backImage[whichImage]+')';
}
};
</script>
棘手的部分是我不能将类应用于HTML,因为我已经在应用这个。。。
<a href="javascript:changeBGImage(1)">Change</a>
转换为HTML中的一个现有div和多个其他类;因此,我需要将类添加到backImage或javascript中的特定png和jpg。
提前感谢!
一个朋友帮我解决了问题。如下:
<script type="text/javascript">
var backImage = [
"images/vintagemap.png",
"images/earbuds.jpg",
"images/flames.jpg",
"images/grass.jpg",
"images/library.jpg",
"images/shapes.jpg"
];
function changeBGImage(whichImage) {
if (document.body){
document.body.style.backgroundImage = 'url('+backImage[whichImage]+')';
document.body.className = 'bgchange';
}
};
</script>
我在原来的JS下面添加了一行"document.body.className='bgchange';",然后编写了以下CSS类:
.bgchange {
background-repeat:no-repeat;
background-size:cover;
}
它现在可以将任何照片调整为可缩放的全屏背景图像。
希望其他人觉得这很有帮助!
作为changeBGImage()
函数的一部分,您可以对document.body
进行额外的.style.
更改,以便在每个背景图像更改时对其执行任何您喜欢的操作。
编辑:
从本质上讲,就拿这个来说:
function changeBGImage(whichImage) {
if (document.body){
document.body.style.backgroundImage = 'url('+backImage[whichImage]+')';
}
};
把它变成这样:
function changeBGImage(whichImage) {
if (document.body){
document.body.style.backgroundImage = 'url('+backImage[whichImage]+')';
document.body.style.backgroundSize = '###px';
}
};
或者,如果您想在body元素上设置background-size
以外的CSS,您可以在.style.
参数之后进行设置。请记住,当将CSS翻译为JS时,会删除连字符,并将下一个字母大写(就像CSS中的background-image
变成JS中的backgroundImage
一样)
相关文章:
- 更改高贴图的缩放级别
- 在不阻止默认行为的情况下检测IE10中的缩放
- 单击超链接时,如何使用Google Maps API v3缩放地图
- 缩放Raphael/SVG容器以适应所有内容
- 传单缩放控制位置错误
- 在不移动内部文本的情况下缩放元素的效果
- 调整缩放窗口高度提升缩放
- 计算CSS3缩放框在另一个框中的最高位置
- D3.JS向rect添加缩放和列表项
- 在交互式图表中动态缩放数据,其中数据会发生变化
- 谷歌街景 API - 捕捉缩放变化
- 将元素的宽度设置为等于监视器大小,而不会在缩放时发生变化
- 可缩放的背景图像,点击后会发生变化
- 限制缩放时y轴范围的变化
- 谷歌图表(AreaChart)如何检测缩放变化
- CanvasJS图形倾斜,直到缩放级别发生变化
- 如何检测缩放级别的变化
- jQuery缩放效果,缩放在1.1和回1时,背景位置的变化
- 改变地图类型的缩放变化与用户的鼠标
- 谷歌地图增加了缩放变化的信息窗口监听器