`
sonyfe25cp
  • 浏览: 204836 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Jquery结合css 实现小气泡效果~

阅读更多
效果就是个鼠标hover上去的时候,浮出一个气泡~上面有其他菜单~

气泡的div:
			<div class="myTip" id="tip" onclick="hideTip();" style="left:352px;top:203px;display:block">
					<div class="tip_top"></div>
					<div class="tip_mid" id="tipContent">
						<a href="http://www.baidu.com" target="_blank">语文</a> <a href="#">数学</a> <a href="#">物理</a> <a href="#">化学</a> <a href="http://www.baidu.com" target="_blank">语文</a> <a href="#">数学</a> <a href="#">物理</a> <a href="#">化学</a> <a href="http://www.baidu.com" target="_blank">语文</a> <a href="#">数学</a> <a href="#">物理</a> <a href="#">化学</a> 
					</div>
					<div class="tip_bottom"></div>
	</div>



两种实现方式:
1.用js控制气泡的坐标
思路:先把气泡的div部分写在body里面,然后隐藏起来;然后鼠标hover事件触发的时候,ajax去后台取数据,插入到气泡里面,取到hover的触发坐标,把气泡的坐标算出来,然后把气泡的display:block。这样,气泡就在指定位置出现了。
优点:少写很多代码,而且js上不用插入大篇幅的html代码
缺点:每次触发hover都要去计算坐标

气泡的css:
.myTip{width:339px; position:absolute;z-index:999;}
.tip_top{background-image:url(../images/tip/tip_top.gif);height:11px;font-size:0;}
.tip_mid{background-image:url(../images/tip/tip_mid.gif);padding:0 10px 0 10px;color:#666;font-size:14px}
.tip_mid a{color:#666; text-decoration:none;font-size:14px}
.tip_mid a:hover{ text-decoration:underline}
.tip_bottom{background-image:url(../images/tip/tip_bottom.gif);height:29px;font-size:0;}


jquery:
$().ready(function(){

	$('#audience > li').hover(function(){
		$("#tipContent").html("");
				var key=$(this).text();
				var $a=$(this);
				var left=getLeft(this)+10+"px";
				var top=getTop(this)-35+"px";
	//			alert(left);
				$.ajax({
				url:"audience.xml",
				success:function(xml){
					var list="";
							$(xml).find("class[value='"+key+"']").each(function(){
								
								$(this).find("item").each(function(){
									var value=$(this).find("value").text();
									var key=$(this).find("key").text();
									value="<a target=\"blank\" href=\"/discussMergeResults.jsp?type=V&au="+key+"\">"+value+"</a> &nbsp";
									list+=value;
									});
							});
						$('#tip').attr("style","left:"+left+";top:"+top+";display:block");
						$('#tipContent').html(list);
						}
			});
		},function(){});


function getTop(e){
   var offset=e.offsetTop;
   if(e.offsetParent!=null) offset+=getTop(e.offsetParent);
   return offset;
}
//获取元素的横坐标
function getLeft(e){
   var offset=e.offsetLeft;
   if(e.offsetParent!=null) offset+=getLeft(e.offsetParent);
   return offset;
}
	
});



页面部分:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Insert title here</title>
<script type="text/javascript" src="js/jquery-1.3.2.js"></script>
<script type="text/javascript" src="js/floatMenuPxxw.js"></script>
<LINK href="css/pxxwStyle.css" type=text/css rel=stylesheet>

</head>
<body>
	<ul id="audience">
		<li>小学</li>&nbsp&nbsp	<li>初中</li>&nbsp&nbsp <li>高中</li>
	</ul>
	<p id="details">
	
	</p>
	    <div class="myTip" id="tip" onclick="hideTip();" style="display:none">
					<div class="tip_top"></div>
					<div class="tip_mid" id="tipContent">
					</div>
					<div class="tip_bottom"></div>
	</div>
	
</body>
</html>


2.用css相对坐标
思路:写一个在每个要hover的地方放一个span,这个主要是用来限制气泡div的相对坐标用,当事件触发的时候,ajax去后台取数据,插入气泡的数据区,然后把气泡的整段div代码插入到span里面去,由于气泡里面有跟span的相对位置限定,所以不需要取鼠标坐标了。
优点:不需要计算鼠标坐标,而且随便插到哪个span下都可以用
缺点:js上写很多html,整段的div都要写在js里面,麻烦...

气泡css代码:
.myTip{width:339px; position:absolute;z-index:999;right:-320px;top:-100px;}
.tip_top{background-image:url(../images/tip/tip_top.gif);height:11px;font-size:0;}
.tip_mid{background-image:url(../images/tip/tip_mid.gif);padding:0 10px 0 10px;color:#666;font-size:14px}
.tip_mid a{color:#666; text-decoration:none;font-size:14px}
.tip_mid a:hover{ text-decoration:underline}
.tip_bottom{background-image:url(../images/tip/tip_bottom.gif);height:29px;font-size:0;}


jquery:
$().ready(function(){

	$('#audience > li').hover(function(){
		$("#tipContent").html("");
				var key=$(this).text();
				var $a=$(this);
				var left=getLeft(this)+10+"px";
				var top=getTop(this)-35+"px";
	//			alert(left);
				$.ajax({
				url:"audience.xml",
				success:function(xml){
					var list="";
							$(xml).find("class[value='"+key+"']").each(function(){
								
								$(this).find("item").each(function(){
									var value=$(this).find("value").text();
									var key=$(this).find("key").text();
									value="<a target=\"blank\" href=\"/discussMergeResults.jsp?type=V&au="+key+"\">"+value+"</a> &nbsp";
									list+=value;
									});
	});
var html="那一堆气泡div的代码"+list;//太长了..不写了..
$(html).insertAfter('页面的那个a后面');//太长了...不写了
						}
			});
		},function(){});
});

页面代码:
<li>
                 <span style="position: relative">
                <a>机关企事业</a>
                
                <div class="myTip" id="tip" onclick="hideTip();" style="display:block">
					<div class="tip_top"></div>
					<div class="tip_mid" id="tipContent">
						<a href="http://www.baidu.com" target="_blank">语文</a> <a href="#">数学</a> <a href="#">物理</a> <a href="#">化学</a> <a href="http://www.baidu.com" target="_blank">语文</a> <a href="#">数学</a> <a href="#">物理</a> <a href="#">化学</a> <a href="http://www.baidu.com" target="_blank">语文</a> <a href="#">数学</a> <a href="#">物理</a> <a href="#">化学</a> 
					</div>
					<div class="tip_bottom"></div>
	</div>
	</span>
                </li>
//这个就是在li里面套了个span,然后把a放在span里面


总结:效果的实现方式有很多种...换个思路就行了..
第一种方案是我自己的.因为不会写css..所以只好计算坐标..
第二种方案是美工的建议..他懂css.帮我调整了气泡的css.增加了span.提供了第二种思路.thks

效果图如下:

查看原图效果比较好...
http://dl.iteye.com/upload/attachment/224265/1345e0df-5c17-3470-922e-78880083c17a-thumb.jpg

  • 大小: 19.9 KB
分享到:
评论

相关推荐

    jQuery+CSS3发光气泡上升动画特效.zip

    总之,"jQuery+CSS3发光气泡上升动画特效"是一个结合了动态效果和视觉美学的网页设计实例,展示了如何利用现代Web技术来提升用户体验。了解并掌握这种特效的实现方式,对于提升你的前端开发技能大有裨益。

    jQuery+CSS3实现不错的气泡幻灯片效果

    4. **动画效果**:利用jQuery的`.animate()`方法和CSS3的过渡效果,我们可以实现气泡的滑动进出。例如,当切换到下一个幻灯片时,当前气泡可以逐渐淡出,新的气泡则从合适的位置滑入。 5. **事件监听**:为了实现...

    jQuery+CSS3实现梦幻气泡手风琴特效源码.zip

    总的来说,结合jQuery和CSS3,我们可以创造出许多富有创意的动态效果。这个梦幻气泡手风琴特效就是其中的一个例子,它展示了这两项技术的强大力量,为网页增添了一抹独特的魅力。通过实践和不断探索,开发者可以创造...

    jQuery+CSS3可拖拽气泡圆形图标菜单特效

    综上所述,"jQuery+CSS3可拖拽气泡圆形图标菜单特效"是一种结合了现代Web技术的创新设计,通过jQuery的事件处理和CSS3的样式及动画特性,为用户提供了直观且有趣的交互体验。开发者可以通过理解这些技术原理,灵活...

    jQuery鼠标移动发出气泡动画

    在本文中,我们将深入探讨如何使用jQuery和HTML5来实现鼠标移动时发出气泡动画的效果。这个效果可以为网页增加动态交互性,提升用户体验。首先,让我们了解jQuery库以及HTML5的一些基本概念。 jQuery是一个轻量级、...

    JQuery&CSS;&CSS;+DIV实例大全.rar

    4.jQuery+CSS实现竖形动感导航菜单效果 5.jquery+div漂亮SmartMenu下拉菜单气泡透明效果 6.jQuery+div实现flash炫彩菜单插件下载 7.jquery+div实用漂亮精致的多级导航栏菜单插件代码示例 8.jQuery+ul实现...

    jQuery和css3全屏导航菜单圆形气泡动画特效

    【jQuery和CSS3全屏导航菜单圆形气泡动画特效】是一种现代网页设计中常见的交互式元素,它结合了jQuery库的动态效果与CSS3的新特性,为用户提供了一种独特而吸引人的导航体验。这种特效主要由以下几个核心部分组成:...

    jQuery CSS3炫酷手风琴特效.zip

    【jQuery CSS3炫酷手风琴特效】是一个结合了JavaScript库jQuery和CSS3技术的交互式网页元素,常用于网站导航或内容展示。这个特效以其蓝色的现代化设计和动态的气泡效果,为用户带来独特的视觉体验。手风琴效果允许...

    jQuery10种不同的水球效果

    1. **水波纹扩散**:这种效果模拟了水滴落在水面时产生的涟漪,通过CSS3的transform和animation属性,结合jQuery来控制时间和强度,让元素表面产生波纹扩散的视觉效果。 2. **水球挤压**:当鼠标悬停在元素上时,...

    jquery绘制气泡墙

    【jQuery绘制气泡墙】是一种常见的网页动态效果,它...总结起来,jQuery绘制气泡墙是一项结合了前端基础、CSS样式设计、JavaScript编程技巧的任务,通过掌握这些知识点,我们可以创建出富有动态感和交互性的网页效果。

    纯CSS3创意气泡动画特效.zip

    虽然标题中提到的是纯CSS3的特效,但标签中的jQuery特效可能意味着这个气泡动画也可能有与jQuery结合的实现方式,或者提供了jQuery版本的实现。CSS特效是指通过CSS3实现的各种视觉效果,而网页特效则将这些技术应用...

    jQuery+css3橙汁汽泡动画特效

    同时,通过修改CSS3的`@keyframes`规则,可以改变气泡上升的曲线,实现不同风格的动画效果。 在压缩包中,`index.html`文件包含了整个特效的HTML结构和页面样式,`js`文件则是特效的JavaScript代码,包括jQuery的...

    Jquery实现关键字滑动效果和层气泡提示特效实例源码

    在jQuery中,可以结合`hover()`函数和自定义CSS样式来实现这一效果。`hover()`有两个参数,分别对应鼠标进入和离开元素时触发的函数。在提示层的CSS中,可以设置定位(positioning)、透明度(opacity)以及渐变...

    jQuery实现的超酷泡泡导航菜单效果

    总的来说,这个“jQuery实现的超酷泡泡导航菜单效果”教程将指导开发者如何结合HTML、CSS和jQuery,创建一个既美观又互动性强的导航菜单,提升用户在网站上的浏览体验。通过学习和实践这个例子,开发者可以进一步...

    基于JQuery实现的网页小游戏

    可以使用jQuery创建浮动的弹出层,设置动态的气泡样式,以及实现消息发送和接收的动画效果。使用`.append()`添加新的消息,`.slideDown()`和`.slideUp()`实现消息展示的动画。 **五、实际开发流程** 1. **规划游戏...

    在线客服 jquery css

    结合`jQuery`的动态功能和`CSS`的视觉呈现,我们可以构建一个既功能强大又美观的在线客服系统。当然,实际开发过程中还需要考虑到性能优化、兼容性问题以及可能的扩展性需求,确保系统的稳定性和易用性。

    jquery气泡弹出提示效果

    本文将深入探讨如何利用jQuery实现气泡弹出提示效果,这是一种常见且实用的用户交互设计。 首先,让我们了解什么是气泡提示。气泡提示通常是一种轻量级的UI元素,用于向用户提供即时信息或指导。它们通常以一个小...

    css3实现iphone玻璃透明气泡.zip

    总的来说,要实现"css3实现iphone玻璃透明气泡"的效果,你需要熟练掌握CSS3中的边框半径、渐变背景、阴影和透明度控制,并结合HTML5和jQuery进行布局和交互设计。这个过程不仅可以锻炼你的CSS3技能,还能提升你对...

    Jquery悬浮气泡

    "jQuery悬浮气泡"是jQuery应用的一个常见功能,用于实现页面元素上的动态提示信息,通常用于提供额外的交互反馈或者帮助用户理解页面元素的作用。这种技术在用户界面设计中非常实用,因为它能够以不干扰用户浏览的...

    jQuery鼠标移动发出气泡动画.zip

    这个“jQuery鼠标移动发出气泡动画.zip”压缩包包含了一个利用jQuery实现的互动效果,当用户鼠标移动时,页面上会产生气泡动画。这种效果常用于增加网站的互动性和趣味性,吸引用户的注意力。 首先,我们要了解...

Global site tag (gtag.js) - Google Analytics