纯JS代码实现气泡效果


Posted in Javascript onMay 04, 2016

就不给大家多文字说明了。给大家梳理下关键步骤。

关键步骤:

1、引入js文件

<script type="text/javascript" src="js/jquery.min.js"></script>
<script type="text/javascript" src='js/jquery.thoughtBubble.js'></script>

2、在需要使用气泡效果的地方

<div id='mainContainer' class='container'>
<img src='ahout.JPG' id="thoughtBubble" alt='whats up?' />
</div>

3、使用气泡效果

<script type="text/javascript">
$(window).ready( function() {
$('#thoughtBubble').thoughtBubble({
text: 'baby,I love you',
font: 'avenir'
});
});

4、这是jquery.thoughtBubblr.js代码

(function($) {
$.fn.thoughtBubble = function( defaults ) {
var settings = $.extend({
backgroundColor: 'white',
fontColor: 'black',
width: '330px',
height: '210px',
fontSize: '15px',
bubbleColor: 'white',
speed: 125
}, defaults ),
getBubbleDiv = function( container ) {
var offset = container.offset(),
modifiedHeight = offset.top - parseInt( settings.height ),
style = '"position: absolute; top:' + modifiedHeight + 'px; left:' + offset.left + 'px ; width:' + settings.width + '; height:' + settings.height + ';"',
bubbleContainer = "<div class='bubble-holder' style=" + style + ">" + getMainBubble() + getBubbles() + "</div>";
return bubbleContainer;
},
getMainBubble = function() {
return '<div class="main-bubble-holder"><div class="bubble main-bubble">' + getText() + '</div></div>';
},
getText = function() {
return '<span style="vertical-align: middle; color: ' + settings.fontColor + ';font-size: ' + settings.fontSize + '; font-family: ' + settings.font + '">' + settings.text + '</span>';
},
getBubbles = function() {
return '<div class="sm-bubble-holder"><div class="bubble bubbleLg"></div><div class="bubble bubbleMd"></div><div class="bubble bubbleSm"></div></div>';
},
animate = function(){
var bubbles = $(document).find('.bubble'),
reversed = bubbles.get().reverse(),
speed = settings.speed;
$(reversed[0]).stop().animate({ opacity: 1}, speed, function() {
$(reversed[1]).animate({ opacity: 1}, speed, function() {
$(reversed[2]).animate({ opacity: 1}, speed, function() {
$(reversed[3]).animate({ opacity: 1},speed);
});
});
});
},
unanimate = function() {
var bubbles = $(document).find('.bubble');
bubbles.stop().animate({opacity: 0});
},
shiftDiv = function( container ) {
var bubbleHolder = $(document).find('.bubble-holder'),
previousPosition = container.offset().left;
bubbleHolder.css('left', previousPosition);
};
return this.each( function() {
var $this = $(this),
container = getBubbleDiv( $this );
$this.on('mouseenter', animate );
$this.on('mouseout', unanimate );
$(window).on('resize', shiftDiv.bind(this, $this) );
return $this.parent().prepend(container);
});
};
})(jQuery);

以上给大家分享了js气泡效果的关键步骤,代码简单易懂,就没给写过多的文字说明,大家有疑问欢迎给我留言,小编会及时回复大家的,在此小编也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
Javascript实现颜色rgb与16进制转换的方法
Apr 18 Javascript
jQuery实现下拉加载功能实例代码
Apr 01 Javascript
jQuery之动画效果大全
Nov 09 Javascript
实现JavaScript高性能的数据存储
Dec 11 Javascript
JavaScript和jQuery制作光棒效果
Feb 24 Javascript
angularJS深拷贝详解
Mar 23 Javascript
浅谈vue.js导入css库(elementUi)的方法
Mar 09 Javascript
vue之浏览器存储方法封装实例
Mar 15 Javascript
JavaScript事件发布/订阅模式原理与用法分析
Aug 21 Javascript
微信小程序使用map组件实现路线规划功能示例
Jan 22 Javascript
jQuery HTML获取内容和属性操作实例分析
May 20 jQuery
vue-cli4.5.x快速搭建项目
May 30 Vue.js
DWR中各种java方法的调用
May 04 #Javascript
js实现div在页面拖动效果
May 04 #Javascript
JS功能代码集锦
May 04 #Javascript
Markdown与Bootstrap相结合实现图片自适应属性
May 04 #Javascript
浅析Bootstrap组件之面板组件
May 04 #Javascript
javascript截图 jQuery插件imgAreaSelect使用详解
May 04 #Javascript
js编写当天简单日历效果【实现代码】
May 03 #Javascript
You might like
制作美丽的拉花
2021/03/03 冲泡冲煮
用PHP编程语言开发动态WAP页面
2006/10/09 PHP
PHP面向对象编程快速入门
2006/10/09 PHP
PHP 远程文件管理,可以给表格排序,遍历目录,时间排序
2009/08/07 PHP
CSS心形加载的动画源码的实现
2021/03/09 HTML / CSS
火狐浏览器(firefox)下获得Event对象以及keyCode
2008/11/13 Javascript
jquery ui dialog里调用datepicker的问题
2009/08/06 Javascript
jquery 分页控件实现代码
2009/11/30 Javascript
在模板页面的js使用办法
2010/04/01 Javascript
最常用的12种设计模式小结
2011/08/09 Javascript
jQuery contains过滤器实现精确匹配使用方法
2013/04/12 Javascript
ANT 压缩(去掉空格/注释)JS文件可提高js运行速度
2013/04/15 Javascript
jQuery 选择器详解
2015/01/19 Javascript
JavaScript对Json的增删改属性详解
2016/06/02 Javascript
Angularjs验证用户输入的字符串是否为日期时间
2017/06/01 Javascript
JavaScript中的FileReader图片预览上传功能实现代码
2017/07/24 Javascript
详解Angular6 热加载配置方案
2018/08/18 Javascript
浅析vue-router实现原理及两种模式
2020/02/11 Javascript
python定时采集摄像头图像上传ftp服务器功能实现
2013/12/23 Python
Python使用Flask框架获取当前查询参数的方法
2015/03/21 Python
对于Python的Django框架部署的一些建议
2015/04/09 Python
从Python程序中访问Java类的简单示例
2015/04/20 Python
python 专题九 Mysql数据库编程基础知识
2017/03/16 Python
使用pandas中的DataFrame数据绘制柱状图的方法
2018/04/10 Python
Python 实现王者荣耀中的敏感词过滤示例
2019/01/21 Python
Python列表常见操作详解(获取,增加,删除,修改,排序等)
2019/02/18 Python
Python实现的微信支付方式总结【三种方式】
2019/04/13 Python
python定位xpath 节点位置的方法
2019/08/27 Python
python 输出列表元素实例(以空格/逗号为分隔符)
2019/12/25 Python
TripAdvisor土耳其网站:全球知名旅行社区,真实旅客评论
2017/04/17 全球购物
美国环保妈妈、儿童和婴儿用品购物网站:The Tot
2019/11/24 全球购物
天逸系统(武汉)有限公司Java笔试题
2015/12/29 面试题
行政管理人员精品工作推荐信
2013/11/04 职场文书
大学生就业策划书范文
2014/04/04 职场文书
2014年教师业务学习材料
2014/05/12 职场文书
2014年银行员工工作总结
2014/11/12 职场文书