• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase
您的位置:首页 > 数据库 >Mysql > JQuery控制图片由中心点逐渐放大效果

JQuery控制图片由中心点逐渐放大效果

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2018-12-05

匿名通过本文主要向大家介绍了JQuery,控制图片,逐渐放大等相关知识,希望本文的分享对您有所帮助
有的时候我们需要做一个当鼠标放置在图片上的时候,希望图片逐渐变大,即图片的width和height逐渐变大,但是此时,其left值与top值没有改变,故看似不是从中心点进行缩放的。如下图:


从中心点进行缩放

实现代码如下:


<meta charset="utf-8">
<style type="text/css">
#p1{ width:600px; height:400px; margin:50px auto; position:relative;  text-align: center; padding-left:50px;}
#p1 img{ position:absolute; left:0; top:0; margin: 0 auto;}
</style>
<p id="p1">
	<img src="images/1.jpg" width="100px" height="80px">
</p>
<script type="text/javascript" src="js/jquery-1.7.1.min.js"></script>
<script type="text/javascript">
	$(function(){
		$('#p1 img').mouseenter(function(){
			var wValue=1.5 * $(this).width();
			var hValue=1.5 * $(this).height();		
			$(this).animate({width: wValue,
							height: hValue,
							left:("-"+(0.5 * $(this).width())/2),
							top:("-"+(0.5 * $(this).height())/2)}, 1000);
		}).mouseleave(function(){
			$(this).animate({width: "100",
										 height: "80",
										 left:"0px",
										 top:"0px"}, 1000 );
		});
	});
</script>



/******************************2016年6月26 补充*******************************************************************/

2016年6月26 补充

今天发现,上面的动画,其实还是有一个小问题的。就是当我多次在相应的元素上移入和移除的时候,就会执行多次mouseenter、mouseleave,当然有人会想,这样会有什么问题呢?那么就看下图



也就是当我的鼠标移出来了,还在反复执行mouseenter、mouseleave。为什么会这样呢?因为JS事件队列中有多个等待执行的动画,关于事件队列,我觉得回头有必要好好总结一下。


修改方案

Jquery提供了stop方法,停止所有在指定元素上正在运行的动画,如下图


修改后效果下图


最终JS部分代码如下


<script type="text/javascript">
	$(function(){
		$('#p1 img').mouseenter(function(){
			var wValue=1.5 * $(this).width();
			var hValue=1.5 * $(this).height();		
			$(this).stop().animate({width: wValue,
							height: hValue,
							left:("-"+(0.5 * $(this).width())/2),
							top:("-"+(0.5 * $(this).height())/2)}, 1000);
		}).mouseleave(function(){
			$(this).stop().animate({width: "100",
										 height: "80",
										 left:"0px",
										 top:"0px"}, 1000 );
		});
	});
</script>


2017年02月28 补充


解决:如果快速移出,移入停留,图片可以无限放大

最终代码如下,效果图见 http:///

$(function(){
	$('.focus_news').mouseenter(function(){
		var imgObj=$(this).find('img');	
		imgObj.stop().css({width: "100%",height: "100%",left:"0px",top:"0px"});	
		var wValue=1.5 * imgObj.width();
		var hValue=1.5 * imgObj.height();
		imgObj.animate({
			width: wValue,
			height: hValue,
			left:("-"+(0.5 * imgObj.width())/2),
			top:("-"+(0.5 * imgObj.height())/2)}, 500);
		$(this).find('.com_news_title').css('color','#F59300');
	}).mouseleave(function(){
		$(this).find('.com_news_title').css('color','#52A2DE');
		$(this).find('img').stop().animate({width: "100%",
									 height: "100%",
									 left:"0px",
									 top:"0px"}, 500 );
	});
});

以上就是JQuery控制图片由中心点逐渐放大效果的内容,更多相关内容请关注微课江湖()!

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • mysqlreport显示Com_中change_db占用比例高的问题的解决方法
  • 几种基础的jquery选择器
  • jQuery鼠标悬停内容动画切换效果实现代码
  • jQuery操作第N个元素的方法
  • JQuery控制图片由中心点逐渐放大效果

相关文章

  • 2018-12-05可以获取客户端的IP地址的sql语句
  • 2017-05-11Linux下MySql 1036 错误码解决(1036: Table 'xxxx' is read only)
  • 2018-12-05sqlserver 游标的简单示例
  • 2018-12-05linux mysql 报错:MYSQL:The server quit without updating PID
  • 2017-12-08mysql慢查询
  • 2018-12-05MySQL之-MySQL高可用实现的详细介绍
  • 2017-05-11MySQL: mysql is not running but lock exists 的解决方法
  • 2017-05-11使用bin-log日志还原数据库的例子
  • 2018-12-05MySQL安全性指南 (2)(转)
  • 2018-12-05如何利用docker快速构建MySQL主从复制环境的详情介绍

文章分类

  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase

最近更新的内容

    • Mysql LONGBLOB 类型存储二进制数据 (修改+调试+整理)
    • MySQL终端管理数据库操作指南
    • MySQL的表分区详解
    • SQLserver中字符串查找功能patindex和charindex的区别
    • utf 8-mysql,jsp,hibernate,不支持utf-8
    • 怎么才能限制SQL Server只能让指定的机器连接
    • MySQL 分区表 partition线上修改分区字段,后续进一步学习partition (2) --> 子分区以及对录入Null值的处理情况.
    • 什么时候会用到临时表?MySQL临时表的使用总结
    • mysql insert的几点操作(DELAYED,IGNORE,ON DUPLICATE KEY UPDAT
    • SQL学习笔记七函数 数字,日期,类型转换,空值处理,case

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有