固定网页背景图同时保持图片比例的思路代码

提供一个背景图片策略:

1,背景图片固定

2,随窗口大小改变而改变大小

3,保持比例不变而缩放

支持浏览器:IE 6,7,8,9+ ,FF,Chrome

演示地址:http://www.einino.net/bg_image.html


代码如下:

<style>
body{margin:0; padding:0;height:2000px; }
#background_img{
top:expression(documentElement.scrollTop); /*we need this expression to fixed the top*/
}
</style>

代码如下:

/**
*@desc make a fixed background image. resize the image to fit the window size besides do not lost the image's proportion
*@author EI Nino
*2013/8/15
*/
var imgBackground=function(_img_obj)
{
this.img = _img_obj;
this.init();
}
imgBackground.prototype={
init:function(){
this.img.style.top="0";
this.img.style.left="0";
if(navigator.appVersion.indexOf('MSIE 6.0')>0){
this.img.style.position="absolute";
this.img.style.bottom="auto";
if(!document.body.style.backgroundImage){//esacpe the flash when scroll the window in IE 6
document.body.style.backgroundImage="url(about:blank)";
document.body.style.backgroundAttachment="fixed";
}
}
else{
this.img.style.position="fixed";
}
this.ra = this.img.width/this.img.height;
this.resize();
this.BindEvent();
},
resize:function() {
var self=this;
if((document.documentElement.clientWidth /document.documentElement.clientHeight )>=self.ra)
{
self.img.style.width=document.documentElement.clientWidth+"px";
self.img.style.height="";
}
else{
self.img.style.width="";
self.img.style.height=document.documentElement.clientHeight +"px";
}
},
GetStyle:function(_obj,_style){
var obj = _obj;
return obj.currentStyle? obj.currentStyle[_style] :window.getComputedStyle(obj, null)[_style];
},
BindEvent:function(){
var self = this;
$(window).resize(function(){//use jquery lib
self.resize();
});
}
};
new imgBackground(document.getElementById("background_img"));

(0)

相关推荐

  • 固定网页背景图同时保持图片比例的思路代码

    提供一个背景图片策略: 1,背景图片固定 2,随窗口大小改变而改变大小 3,保持比例不变而缩放 支持浏览器:IE 6,7,8,9+ ,FF,Chrome 演示地址:http://www.einino.net/bg_image.html 复制代码 代码如下: <style> body{margin:0; padding:0;height:2000px; } #background_img{ top:expression(documentElement.scrollTop); /*we need

  • Android下保存简单网页到本地(包括简单图片链接转换)实现代码

    最近在做一个项目涉及到将包含图片的简单网页下载到本地,方便离线时观看,在这里分享一下,大家做下简单修改就可以用到自己的项目中了.(这里用到了AQuery库) 复制代码 代码如下: package com.nekocode.xuedao.utils; import java.io.File;import java.io.FileOutputStream;import java.util.ArrayList;import java.util.regex.Matcher;import java.uti

  • JS实现让网页背景图片斜向移动的方法

    本文实例讲述了JS实现让网页背景图片斜向移动的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: <html> <head> <title>JS实现让网页背景图片斜向移动</title> <body background="images/changshi.ico"> <script language="Javascript"> <!-- function selectAl

  • js实现点击图片改变页面背景图的方法

    本文实例讲述了js实现点击图片改变页面背景图的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: <html> <head> <title>点击图片即改变页面的背景图片</title> </head> <body bgcolor="#FFFFFF" leftmargin="0" marginwidth="0"> <script language=&qu

  • 关于Vue背景图打包之后访问路径错误问题的解决

    案例环境 通过vue-cli脚手架创建的vue项目 在项目打包的时候遇到了背景图片路径出错的问题,经过谷歌一番,发现是在配置的时候对图片的限制大小过小造成的 首先,出错点在url-loader上面. // url-loader配置 // build/webpck.base.conf.js { test: /\.(png|jpe?g|gif|svg)(\?.*)?$/, loader: 'url-loader', query: { limit: 10000, name: utils.assetsP

  • php gd2 上传图片/文字水印/图片水印/等比例缩略图/实现代码

    复制代码 代码如下: <?php //上传文件类型列表 $uptypes=array( 'image/jpg', 'image/jpeg', 'image/png', 'image/pjpeg', 'image/gif', 'image/bmp', 'image/x-png' ); $max_file_size = 200000; //上传文件大小限制, 单位BYTE $path_im = "prod_img/"; //生成大图保存文件夹路径 $path_sim = "

  • jquery+css3实现网页背景花瓣随机飘落特效

    飘花效果的实现--效果图: 查看演示  源码下载 需求: 一个jquery,,,这个看标题么就知道了 jQuery Transit还有这个东西 http://github.com/rstacruz/jquery.transit jquery对一些效果的扩展 飘花的效果稍微复杂一点,有一定量的JavaScript代码,通过JS+CSS3的组合实现的.观察右边效果,可以大致分解飘花的实现 飘花比人物的层级都高       飘花数量非常多       飘花会有一定的轨迹运动       飘花带有渐变的

  • Android编程之书架效果背景图处理方法

    本文实例讲述了Android编程之书架效果背景图处理方法.分享给大家供大家参考,具体如下: 在android应用中,做一个小说阅读器是很多人的想法,大家一般都是把如何读取大文件,如果在滚动或是翻页时,让用户感觉不到做为重点.我也在做一个类似一功能,可是在做书架的时候,看了QQ阅读的书架,感觉很好看,就想做一个,前面一篇<android书架效果实现原理与代码>对此做了专门介绍,其完整实例代码可点击此处本站下载. 上面的例子很不错,可是有一个问题是他的背景图的宽必须是手机屏幕的宽,不会改变,这样感

  • php实现背景图上添加圆形logo图标的方法

    本文实例讲述了php实现背景图上添加圆形logo图标的方法.分享给大家供大家参考,具体如下: 说一下步骤: 总共分 3 步: 1. 压缩logo 成固定大小的方形图片 2. 将logo 转成圆形logo 3. 将logo与背景图合并 废话不多说,直接上代码: <?php /** * 作者:friker * 开发时间:20160516 * 功能:图片处理 * */ class ImageController extends CI_Controller{ public function __cons

  • 背景图跟随鼠标移动的Mootools插件实现代码

    效果演示:源代码: 复制代码 代码如下: <script style="text/javascript" src="https://ajax.googleapis.com/ajax/libs/mootools/1.4.1/mootools-yui-compressed.js"></script> </head> <body id='a'> <h2 class='a'>Single images</h2

随机推荐