纯CSS的jQuery的气泡提示组件
1. [代码][JavaScript]代码
//调用说明
//$(selector).bub($(selector) | string[, options]);
//示例: $('#demo1').bub('hello, world!');
//options 说明
//defaults: {
// color: '#e6e6e6', //背景颜色
// padding: '10px', //内边距
// radius: '5px', //圆角半径(css3)
// shadow: 'none', //阴影(css3)
// left: 0, //位置x轴偏移
// top: 0, //位置y轴偏移
// arrow_size: '15px', //气泡的箭头大小
// arrow_direct: ['top', 'left'], //气泡的箭头指向方位([0]:'top'|'bottom',[1]:'left'|'right')
// click_blank_hide: true //点击页面空白处时是否销毁气泡
//}
(function () {
$.fn.extend({
bub: function (content, opts) {
var merge = function (all, segment) {
var ret = {};
for (var o in all) {
ret[o] = segment[o] === undefined ? all[o] : segment[o];
}
return ret;
};
var defaults = {
color: '#e6e6e6',
padding: '10px',
radius: '5px',
shadow: 'none',
left: 0,
top: 0,
arrow_size: '15px',
arrow_direct: ['top', 'left'],
click_blank_hide: true
};
opts = merge(defaults, opts || {});
this.each(function () {
if ($(this).data().buber) {
$(this).un_bub();
}
var bub_box = $('<div class="ns_bub_box" sans serif", tahoma, verdana, helvetica; color: rgb(0, 0, 0); text-transform: none; text-indent: 0px; letter-spacing: normal; word-spacing: 0px; white-space: normal; word-wrap: break-word; -webkit-text-stroke-width: 0px;'> border-' + opts.arrow_direct[0] + ':transparent ' + opts.arrow_size + ' dashed;\
border-' + opts.arrow_direct[1] + ':' + opts.color + ' ' + opts.arrow_size + ' solid;\
position:absolute;\
border-' + (opts.arrow_direct[0] == 'top' ? 'bottom' : 'top') + '-' + opts.arrow_direct[1] + '-radius:' + opts.radius + ';\
left:' + ($(this).offset().left + opts.left) + 'px;\
top:' + ($(this).offset().top + $(this).outerHeight() + opts.top) + 'px;\
">\
\
\
\
\
\
\<div class="ns_bub_wrapper" sans serif", tahoma, verdana, helvetica; color: rgb(0, 0, 0); text-transform: none; text-indent: 0px; letter-spacing: normal; word-spacing: 0px; white-space: normal; word-wrap: break-word; -webkit-text-stroke-width: 0px;'> box-shadow:' + opts.shadow + ';\
padding:' + opts.padding + ';\
background:' + opts.color + ';\
border-top-' + (opts.arrow_direct[1] == 'left' ? 'right' : 'left') + '-radius:' + opts.radius + ';\
border-bottom-' + (opts.arrow_direct[1] == 'left' ? 'right' : 'left') + '-radius:' + opts.radius + ';\
"></div></div>');http://www.huiyi8.com/lingsheng/
$('body').append(bub_box);手机铃声
$(this).data().buber = bub_box;
$(this).attr('ns_bub_binder', opts.click_blank_hide);
if (content instanceof $) {
content = content.clone();
content.show();
}
bub_box.find('.ns_bub_wrapper').append(content);
});
},
un_bub: function () {
this.each(function () {
var bub_box = $(this).data().buber;
if (bub_box === undefined) return;
delete $(this).data().buber;
bub_box.remove();
});
}
});
$(function () {
$(document).click(function (e) {
e = e || window.event;
var src = e.target || e.srcElement;
if ($(src).attr('class') == 'ns_bub_box' || $(src).attr('class') == 'ns_bub_wrapper' || $(src).attr('ns_bub_binder') !== undefined) return;
$('*[ns_bub_binder=true]').un_bub();
});
});
})(window);
纯CSS的jQuery的气泡提示组件的更多相关文章
- 使用纯CSS实现带箭头的提示框
爱编程爱分享,原创文章,转载请注明出处,谢谢!http://www.cnblogs.com/fozero/p/6187323.html 1.全部代码 <!DOCTYPE html> < ...
- 瀑布流的实现纯CSS实现Jquery实现
瀑布流的实现 注:本文部分图片自百度下载,如有侵权,联系删图. 首先,选择几张图片布局到HTML内容中.HTML如下所示. <div class="wrapper"> ...
- 纯CSS实现箭头、气泡让提示功能具有三角形图标(简单实例)
<style type="text/css"> /*向上箭头,类似A,只有三个边,不能指定上边框*/ .arrow-up { width: 0px; height: 0 ...
- 纯css手写圆角气泡对话框 微信小程序和web都适用
嗯……我们设计师强烈要求一定要圆角!圆角的气泡对话框,不要那种尖角的.这其中还遇上了个尴尬的问题,z-index不生效 无非就是两种方法,一种是使用图片再定位拼接起来使用,太简单了具体就不详细的说了. ...
- Tippy.js - 免费开源且高度可定制的气泡提示独立组件
推荐一个非常优秀的 web 气泡提示独立UI组件. 介绍 Tippy.js 是一款用于Web的完整工具提示,弹出菜单,下拉菜单和菜单解决方案.适用于鼠标,键盘和触摸输入. 特点 超轻量的纯 javas ...
- 气泡提示 纯CSS
tooltip(气泡提示) 依赖 脚本文件:CalvinTip.js 样式文件:toolTip.css 参数 elems HTMLNode 必须 气泡提示的元素 options Object 可选 多 ...
- jquery.validate.unobtrusive.js实现气泡提示mvc错误
改写jquery.validate.unobtrusive.js实现气泡提示mvc错误 个人对于这个js.css不是很擅长,所以这个气泡提醒的样式网上找了下,用了这个http://www.cnblog ...
- 纯CSS箭头,气泡
原文地址: CSS Triangles 演示地址:CSS Triangles Demo 原文日期: 2013年8月5日 翻译日期: 2013年8月9日 本文两种实现方式: 使用或不使用 before ...
- 纯CSS tooltip 提示
一般的tooltip,使用超链接的title,或者是css+javascript生成. 如果页面布局合理,样式结构清晰,可以使用纯CSS的提示. demo如下: a.tooltip { positio ...
随机推荐
- 使用wifi连接eclipse进行android程序调试
首先手机必须是root过的.能够使用百度一键root工具. 然后,在手机中打开这个终端(terminal)应用,输入例如以下命令: su setprop service ...
- ifconfig 命令
许多windows非常熟悉ipconfig命令行工具,它被用来获取网络接口配置信息并对此进行修改.Linux系统拥有一个类似的工具,也就是ifconfig(interfaces config).通常需 ...
- Ionic项目打包安卓APK
之前用Ionic+Angular做了几个小应用Demo,现在用其中一个做实验试下打包安卓的APK安装包.(备注:我用的应用demo是之前博客里写的汇率的Demo,不清楚的同学可以查哈~) 我是用ion ...
- 检测session用户信息跳转首页界面
方案一:采用jsp方式检测用户信息跳转 <%@ page language="java" pageEncoding="UTF-8"%> <%@ ...
- python selenium2示例 - 日志管理
logger继承图 前言 在自动化测试实践过程中,必不可少的就是进行日志管理,方便调试和生产问题追踪,python提供了logging模块来进行日志的管理.下面我们就logging模块的学习和使用进行 ...
- 嵌入式驱动开发之sensor---sensor 图形传感器调试
图像传感器(image sensor)复位顺序 1. 硬件复位寄存器:2. 软件复位寄存器:3. 设置时钟寄存器:4. 设置PLL倍频:5. 设置分辨率:6. 设置窗口控制:7. 设置输出顺序:8. ...
- YUM安装(卸载)KDE和GNOME
YUM安装(卸载)KDE和GNOME显示系统已经安装的组件,和可以安装的组件:#yum grouplist 如果系统安装之初采用最小化安装,没有安装xwindow,那么先安装:#yum groupin ...
- js自己定义插件-选项卡
该功能比較简单.巩固一下jquery插件写法,注意引入的jquery.js . 自己定义插件路径代码例如以下: 页面: <!doctype html> <html> < ...
- web 网页截取图片
关于在UIwebview上添加滚动图片 两种滚动手势会混淆,应为webview有webview.scrollview的属性 故参照昨天的随笔 scrollview嵌套解决方案. 本篇随笔主要讲循环使用 ...
- pip源提示“not a trusted or secure host” 解决
问题:The repository located at mirrors.aliyun.com is not a trusted or secure host and is being ignored ...