js脚本控制图片水平与垂直居中

使用方法:

1.定义ResizeImg(obj)方法

 1 function ResizeImg(obj) {
 2     var boxHeight = $(".box").height();
 3     var boxWidth = $(".box").width();
 4     var imgHeight = $(obj).height();
 5     var imgWidth = $(obj).width();
 6     if (imgHeight * boxWidth >= imgWidth * boxHeight) {
 7         //调整后,高度超出的情况
 8         var afterImgHeight = boxWidth * imgHeight / imgWidth;
 9         $(obj).css("width", boxWidth + "px").css("height", afterImgHeight + "px");
10         var offsetTop = (afterImgHeight / 2) - (boxHeight / 2);
11         $(obj).css("top", "-" + offsetTop + "px"); //  -20px
12     }
13     else {
14         //调整后,宽度超出的情况
15         var afterImgWidth = boxHeight * imgWidth / imgHeight;
16         $(obj).css("height", boxHeight + "px").css("width", afterImgWidth + "px");
17         var offsetLeft = (afterImgWidth / 2) - (boxWidth / 2);
18         $(obj).css("left", "-" + offsetLeft + "px"); //  -20px
19     }
20     console.log("resize ok.");
21 }

2.在img标绑定onload事件处理方法为ResizeImg.

<img src="xxx.jpg"  onload="ResizeImg(this)"/>

3.注意:

不设置图片的宽,高;

需设置图片定位属性,position: relative;

效果如下图:

时间: 2024-10-25 01:19:36

js脚本控制图片水平与垂直居中的相关文章

js鼠标控制图片的特效,滚轮控制放大、缩小、鼠标拖动、聚焦。。。

项目需要做一个js控制图片的特效,滚轮控制放大.缩小.鼠标拖动等效果,网上找方法,各种报错.不兼容...最终自己研究出一套方案如下: 代码直接从项目中拷了,就不整理格式了 <script type="text/javascript"> //图片特效 by jifei_mei //图片大小,记录放大或缩小图片前的大小 var pic_size = { width:0, height:0 }; //绑定滚轮滚动事件 if (window.addEventListener) {

css设置图片水平及垂直居中

.box { /*非IE的主流浏览器识别的垂直居中的方法*/ display: table-cell; vertical-align:middle; /*设置水平居中*/ text-align:center; /* 针对IE的Hack */ *display: block; *font-size: 175px;/*约为高度的0.873,200*0.873 约为175*/ *font-family:Arial;/*防止非utf-8引起的hack失效问题,如gbk编码*/ width:200px;

显示滚动条后,table 表头与内容不对齐,JS脚本控制

/*设置高度.滚动条*/ //其他DIV 高度var tbheight = document.getElementById("div_top").scrollHeight + document.getElementById("div_tools_bar").scrollHeight+document.getElementById("div_tools_bar2").scrollHeight+document.getElementById(&quo

css 水平、垂直居中

水平居中 行内元素 行内元素:(img.span.文字等行内元素),通过在父级元素设置 text-align:center 使元素水平居中. 块级元素 块级元素:(div.p.h1...h6.ul.li等块级元素),通过在要居中元素设置 margin:0 auto(上.右.下.左),这里表示上下0 左右自适应,达到元素水平居中. 垂直居中 行内元素 行内元素:(img.span.文字等行内元素),通过在父级元素设置display: table-cell;vertical-align: middl

js控制图片缩放、水平和垂直方向居中对齐

已測试兼容 IE6,IE7,IE8,火狐FF,谷歌chrome. 这里使用了jquery插件,假设你不使用jquery,略微改造一下也非常快. 网上查了些资料,用css控制兼容性不好,看去非常揪心.于是找js代码,看了几种写法总是感觉差点什么,算了,还是自己写吧,于是有了以下这个简单的方法,能自己主动依据图片容器大小进行缩放.水平和垂直居中对齐,效果例如以下图: [html] view plaincopy <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.

加载网络未知尺寸图片,自动缩放并水平、垂直居中显示

个人随笔代码实现以下功能:1.加载网络未知尺寸的图片,用户可以随意输入显示区的大小,图片会自动适应宽高.2.水平.垂直居中未知尺寸的图片 1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>水平并垂直居中未知大小的图片</title> 6 <style> 7 #imageBox

wap图片滚动特效_无css3 元素js脚本编写

手机图片滑动切换,网上有很多这样的例子,但都借助于其他组件,让代码混乱的不行:还有就是用到css3里的 transform:translate(x,y);移动元素,不过发现在不支持css3的设备上马上完蛋了,所 有下定决心自己做一个,谁知出现了很多的问题,其中最重要的是给图片加链接,网页中的上下滚动条不能在拖动图片的时候滚动,并且不能兼容pc机器上的拖动:在这里就简单介绍一下遇到的问题和解决的方法: 问题一:给图片加上链接后,在拖动的时候总是跳到其他页面: 问题根源主要是不能判断是点击还是拖动,

使用Js脚本 修改控制IE的注册表相关设置(activex等)

使用Js脚本 修改控制IE的注册表相关设置(activex等) 分类: PHP2012-12-05 18:51 2035人阅读 评论(2) 收藏 举报 脚本写法: <SCRIPT LANGUAGE="JavaScript"><!--var WshShell=new ActiveXObject("WScript.Shell"); //添加信任站点ipWshShell.RegWrite("HKCU\\Software\\Microsoft\\

高宽不定图片水平垂直居中

图片水平垂直居中的两个常用方法: 1.Table-cell. IE8+及标准浏览器利用display:table-cell让容器以表格元素的方式呈现,配合vertical-align和text-align实现内部图片水平垂直居中. IE67不支持display:table-cell,可用font-size,值为容器的0.875倍做hack. html,body,p, div { margin: 0; padding: 0; } .wrap { height: 300px; width: 300p