js实现图片的大小自适应效果
需求是传过来一个图片,根据外层div的大小自动进行缩放效果。
function ShowSecondImg(v) {
var rate, newX, newY,newW, newH = 0; //表示图片相对窗口的缩放比例
var imgW, imgH;
var centerW = $(window).width() - $("#alarmQueue").width() - $("#presInfo").width() - 40;
var centerH = $(window).height() - $("#detailedInfor").height()-148;
$("#imgBoxs").find("#second").remove();
var img = $('<img/>', { src: v.First_frame_image_url, "id": "second" });//v.First_frame_image_url
img.prependTo('#imgBoxs');
imgW = img.width();
imgH = img.height();
//获取的参数
var rectX= parseInt(v.facerect.x);
var rectY =parseInt(v.facerect.y);
var rectWidth =parseInt(v.facerect.w);
var rectHeight =parseInt(v.facerect.h);
// alert(v.facerect.x);
//var i = (centerW / 16 - centerH / 9) > 0 ? 0 : 1;
var i= (centerW/centerH - imgW/imgH ) > 0 ? 0 : 1;
if (i == 1) {
//如果窗口宽不长,高长。以宽为准。
rate = imgW / centerW;
var imgRateH = imgH / rate; //img real rate height;
newX = rectX / rate
newY = rectY / rate;
newW = rectWidth / rate;
newH = rectHeight / rate;
$("#imgBox").width(centerW);
$("#imgBox").css("height", "100%");
$("#second").css({ "width": centerW, "height": imgRateH });
}
else if (i == 0) {
//如果窗口宽足够长,高不长。以高为准。
rate = centerH / imgH;
var imgRateW = imgW * rate; //img real rate width;
var leftsideW = (centerW - imgRateW) / 2; //leftside add rightside width;
newX = rectX * rate + leftsideW;
newY = rectY * rate;
newW = rectWidth * rate;
newH = rectHeight * rate;
$("#imgBox").height(centerH);
$("#imgBox").css("width", "100%");
$("#second").css({ "width": imgRateW, "height": centerH });
}
// $("#detailedInfor").height($(".container").height()-centerH);
$("#faceDiv").attr('style', 'display:block;top:' + newY + 'px;left:' + newX + 'px;width:' + newW + 'px;height:' + newH + 'px');
}
js实现图片的大小自适应效果的更多相关文章
- JS 判断图片尺寸大小,以便页面resize时,动态调整页面元素位置
){ clearInterval(global_timename4pool); } } //由于无法判断图片显示完整的时机,只好用定时器来做,计算完成后再关掉定时器. global_timename4 ...
- 使用JS实现图片展示瀑布流效果
不知大家有没有发现,一般的图片展示网站都会使用瀑布流效果,所谓的瀑布流 就是网站内的图片不会一下子全缓存出来,而是等你滚动到一定的距离的时候, 下面的图片才会继续缓存,并且图片也是随机出现的,只是宽度 ...
- 用js实现图片的无缝滚动效果
实现图片的无缝滚动就是要让你的图片集在一定时间里自动切换,那就需要js里的定时器来控制时间. js中关于定时器的方法有两种:setTimeout和setInterval.它们接收的参数是一样的,第一个 ...
- js获取图片原始大小
摘要: 浏览器中显示的图片大小未必是他真实的高和宽,比如像下面这样,我们给他加上宽和高的样式 <img src="IE.png" style="width:25px ...
- js 实现图片无限横向滚动效果
门户网站好多都有产品无线滚动展现的效果: 测试demo1 -- 非无缝滚动(可以看出来从头开始的效果): css样式如下: .box{ width: 1000px; border: 1px solid ...
- echarts.js中的图表大小自适应
echarts的图表,如果父级容器的height/width属性设置为百分比的形式,那么echarts就会warning,且不能正常的生成图表.所以div容器的高度宽度必须指定为px,这设计不知道是为 ...
- js插件-图片椭圆轮播效果
插件效果图: html 代码如下: <div id="container"> <img src="images/cartoon/1.jpg" ...
- js限制图片的大小
<form id="financialForm" action="<%=basePath%>riskcontrol/website/review_bor ...
- JS检测图片的大小
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> < ...
随机推荐
- leftBarbuttonItem/rightBarButtonItem和leftBarbuttonItems/rightBarButtonItems相关问题
仿写项目的时候,出现了一个Bug:点击右边的"编辑","编辑"变为"完成",左侧出现"全选","删除" ...
- 学习Linux系列--安装软件环境
本系列文章记录了个人学习过程的点点滴滴. 回到目录 10.安装Lamp套件. 最简单的方式,如下 sudo tasksel install lamp-server Apache 菜鸟教程 Ubuntu ...
- JavaScript中正则表达式test()、exec()、match() 方法
转自http://www.cnblogs.com/jane-y/articles/5183859.html 1.test test 返回 Boolean,查找对应的字符串中是否存在模式.var str ...
- 安装VS2012以后打开office 2007 的任何程序都跳出VS2012配置界面的解决方案
前两天闲来无事,下载了vs2012,打算学点mvc4的东西,装好以后,问题来了,打开word文档,直接弹出个windows正在配置vs2012的界面,等就等一下吧,结束以后还能正常看,结果谁知道,每次 ...
- 如何用Java实现DVD的一些功能
/* 这个代码中涉及到的知识点很多,大家要慢慢悟!! */ import java.util.*; import java.text.*; class DvdSet { //定义三个属性 String ...
- java static静态方法的并发性
在做一个web项目的时候需要做一个通用类去处理一些问题,想到这个类很多地方都有用到,又不想每次都new一个,因此就定义了里面的方法是静态方法,然后又因为多个静态方法都用到了同一个对象,结果定义了一个类 ...
- ASP。net 之view
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Index.aspx.cs&qu ...
- 【前端】screenX/Y, clientX/Y, pageX/Y 的区别
一图胜千言. 做了一个图:
- easyui datagride 两种查询方式
easyui datagride 两种查询方式function doReseach() { //$('#tt').datagrid('load', { // FixedCompany: $('.c_s ...
- iOS全军覆没!分分钟教你徒手破解iPhone
http://iphone.tgbus.com/news/class/201503/20150304141407.shtml 破解id密码的最新dns 218.59.181.182