jquery弹出框的用法示例(一) - Web前端
作者:98wpeu发布时间:2026-06-02分类:网页前端技术浏览:60
导读:最近做一个项目,许多功能都是关于弹出框的,以前觉得弹出框就那一种,很容易实现,但是最近真的做起这个功能了,发现会有好多自己考虑不到的问题。比如关于一些添加,删除,修改的弹出框,当...
最近做一个项目,许多功能都是关于弹出框的,以前觉得弹出框就那一种,很容易实现,但是最近真的做起这个功能了,发现会有好多自己考虑不到的问题。
比如关于一些添加,删除,修改的弹出框,当添加一些用户的时候,弹出框里要提交一些关于用户的信息,设置密码等信息,当修改的时候,根据用户的名字和id号来修改密码等等。
例子如下:
复制代码 代码如下:
<ul class="tabPanel clearfix">
<li class="hover">
<a href="" class="close"></a>
<div class="panelBox">
<dl>
<dt id="dt1" contentid=".pwdtips">蓝枫前端</dt>
<dd>添加询盘【<a href="">10</a>】</dd>
<dd>跟踪询盘【<a href="">1000</a>】</dd>
</dl>
</div>
</li>
<li>
<a href="" class="close"></a>
<div class="panelBox">
<dl>
<dt id="dt2" contentid=".pwdTips">蓝枫前端</dt>
<dd>添加询盘【<a href="">10</a>】</dd>
<dd>跟踪询盘【<a href="">1000</a>】</dd>
</dl>
</div>
</li>
<li>
<a href="" class="close"></a>
<div class="panelBox">
<dl>
<dt id="dt3" contentid=".pwdTips">蓝枫前端</dt>
<dd>添加询盘【<a href="">10</a>】</dd>
<dd>跟踪询盘【<a href="">1000</a>】</dd>
</dl>
</div>
</li>
<li>
<a href="" class="close"></a>
<div class="panelBox">
<dl>
<dt contentid=".pwdTips">蓝枫前端</dt>
<dd>添加询盘【<a href="">10</a>】</dd>
<dd>跟踪询盘【<a href="">1000</a>】</dd>
</dl>
</div>
</li>
<li>
<a href="" class="close"></a>
<div class="panelBox">
<dl>
<dt id="" contentid=".pwdTips">蓝枫前端</dt>
<dd>添加询盘【<a href="">10</a>】</dd>
<dd>跟踪询盘【<a href="">1000</a>】</dd>
</dl>
</div>
</li>
<li>
<div class="panelBox addpanelBox">
<a class="addPanelBTn" contentid="div#pwdRest">添加</a>
</div>
</li>
</ul>
弹出框内容:
复制代码 代码如下:
<div class="pwdTips" style="display:none;" id="pwdRest">
<a class="closeBtn" href="javascript:;"></a>
<div class="traDBox">
<div class="row" id="UserName">
<div class="label" >用 户 名:</div>
<div class="cell"><inputtype="text" class="text" id="name" name="" value=""></div>
</div>
<div class="row">
<div class="label" >营销客服:</div>
<div class="cell"><input type="text" class="text" id="opename" name="" value=""></div>
<input type="hidden" name="" id="onLineId"/>
</div>
<div class="row">
<div class="label">登录密码:</div>
<div class="cell"><input type="text" class="text" id="" name="" value=""></div>
</div>
<div class="row">
<div class="label">确认密码:</div>
<div class="cell"><input type="text" class="text" id="" name="" value=""></div>
</div>
<div class="row">
<div class="dialogBtn">
<button type="submit" class="diaSmtBtn">确认</button>
<button type="button" class="diaSmtRst">取消</button>
</div>
</div>
</div>
</div>
实现的弹出框的JS
复制代码 代码如下:
$(function(){
var $window = $(window),
$doc = $(document),
$body = $('body');
//关于管理员添加删除的js代码
var TABLi=$(".tabPanel").find("li");
tabLi.hover(function(){
$(this).addClass("hover").siblings().removeClass("hover");
},function(){})
/*弹出框定位*/
$(window).scroll(function() {
var pwdTips =$(".pwdTips");
var height=pwdTips.height();
var width=pwdTips.width();
var bodyHieght=$(window).height() ;
var bodyWidth=$(window).width() ;
if(!pwdTips.is(":hidden")){
pwdTips.CSS({
position: "fixed",
top: (bodyHIEght-height)/2,
left:(bodyWidth-width)/2
});
}
});
/*弹出框定位结束*/
/*弹出框半透明背景的设置*/
var bgshadow = function(zindex) {
zindex = zindex?zindex:999;
var _bg = $('div.pwdTipsBg'),
bg_html = '<div class="pwdTipsBg"></div>';
if(_bg.length === 0) {
_bg = $(bg_HTML);
}
$body.append(_bg);
_bg.css({
position : 'absolute',
top : '0px',
left : '0px',
width : $window.scrollLeft()+$window.width()+'px',
height : $doc.height(),
'z-index' : zindex
});
return _bg;
};
/*弹出框半透明背景的设置*/
/*绑定事件*/
var bindClick = function(obj,handlerevent){
obj.bind("click",function(e){
e.PReventDefault();
bgShadow(1001);
var select=$(this).attr('contentid');
var onLineId=$(this).attr('id');
var pwdTips=$(select);
if(handlerEvent!=null)
{
handlerEvent($(this));
}
pwdTips.show();
pwdTips.find(".closeBtn,.diaSmtRst").click(function(){
pwdTips.hide();
var _bg = $('div.pwdTipsBg');
_bg.remove();
});
pwdTips.find('#onLineId').val(onLineId);
});
};
var show=tabLi.find("dt"),
addPanelBtn=$(".addPanelBtn"),
clickBtn=$(".clickBtn");
var setValue= function(obj){
if($(obj).is('.addPanelBtn'))
{
$('#opename').attr('value',"");
$('#pwdRest').find('#userName').show();
}
else
{
$('#pwdRest').find('#userName').hide();
$('#opename').attr('value',obj.text());
$("input.shareId").attr('value',obj.attr('id'))
}
}
$(function(){
bindClick(show,setValue);
bindClick(addPanelBtn,setValue);
bindClick(clickBtn,setValue);
});
})
所有的弹出内容根据情况做判断显示,获取相应的值,先根据触发的类型判断是修改密码或者添加用户客服,然后再显示相应的弹出内容
比如关于一些添加,删除,修改的弹出框,当添加一些用户的时候,弹出框里要提交一些关于用户的信息,设置密码等信息,当修改的时候,根据用户的名字和id号来修改密码等等。
例子如下:
复制代码 代码如下:
<ul class="tabPanel clearfix">
<li class="hover">
<a href="" class="close"></a>
<div class="panelBox">
<dl>
<dt id="dt1" contentid=".pwdtips">蓝枫前端</dt>
<dd>添加询盘【<a href="">10</a>】</dd>
<dd>跟踪询盘【<a href="">1000</a>】</dd>
</dl>
</div>
</li>
<li>
<a href="" class="close"></a>
<div class="panelBox">
<dl>
<dt id="dt2" contentid=".pwdTips">蓝枫前端</dt>
<dd>添加询盘【<a href="">10</a>】</dd>
<dd>跟踪询盘【<a href="">1000</a>】</dd>
</dl>
</div>
</li>
<li>
<a href="" class="close"></a>
<div class="panelBox">
<dl>
<dt id="dt3" contentid=".pwdTips">蓝枫前端</dt>
<dd>添加询盘【<a href="">10</a>】</dd>
<dd>跟踪询盘【<a href="">1000</a>】</dd>
</dl>
</div>
</li>
<li>
<a href="" class="close"></a>
<div class="panelBox">
<dl>
<dt contentid=".pwdTips">蓝枫前端</dt>
<dd>添加询盘【<a href="">10</a>】</dd>
<dd>跟踪询盘【<a href="">1000</a>】</dd>
</dl>
</div>
</li>
<li>
<a href="" class="close"></a>
<div class="panelBox">
<dl>
<dt id="" contentid=".pwdTips">蓝枫前端</dt>
<dd>添加询盘【<a href="">10</a>】</dd>
<dd>跟踪询盘【<a href="">1000</a>】</dd>
</dl>
</div>
</li>
<li>
<div class="panelBox addpanelBox">
<a class="addPanelBTn" contentid="div#pwdRest">添加</a>
</div>
</li>
</ul>
弹出框内容:
复制代码 代码如下:
<div class="pwdTips" style="display:none;" id="pwdRest">
<a class="closeBtn" href="javascript:;"></a>
<div class="traDBox">
<div class="row" id="UserName">
<div class="label" >用 户 名:</div>
<div class="cell"><inputtype="text" class="text" id="name" name="" value=""></div>
</div>
<div class="row">
<div class="label" >营销客服:</div>
<div class="cell"><input type="text" class="text" id="opename" name="" value=""></div>
<input type="hidden" name="" id="onLineId"/>
</div>
<div class="row">
<div class="label">登录密码:</div>
<div class="cell"><input type="text" class="text" id="" name="" value=""></div>
</div>
<div class="row">
<div class="label">确认密码:</div>
<div class="cell"><input type="text" class="text" id="" name="" value=""></div>
</div>
<div class="row">
<div class="dialogBtn">
<button type="submit" class="diaSmtBtn">确认</button>
<button type="button" class="diaSmtRst">取消</button>
</div>
</div>
</div>
</div>
实现的弹出框的JS
复制代码 代码如下:
$(function(){
var $window = $(window),
$doc = $(document),
$body = $('body');
//关于管理员添加删除的js代码
var TABLi=$(".tabPanel").find("li");
tabLi.hover(function(){
$(this).addClass("hover").siblings().removeClass("hover");
},function(){})
/*弹出框定位*/
$(window).scroll(function() {
var pwdTips =$(".pwdTips");
var height=pwdTips.height();
var width=pwdTips.width();
var bodyHieght=$(window).height() ;
var bodyWidth=$(window).width() ;
if(!pwdTips.is(":hidden")){
pwdTips.CSS({
position: "fixed",
top: (bodyHIEght-height)/2,
left:(bodyWidth-width)/2
});
}
});
/*弹出框定位结束*/
/*弹出框半透明背景的设置*/
var bgshadow = function(zindex) {
zindex = zindex?zindex:999;
var _bg = $('div.pwdTipsBg'),
bg_html = '<div class="pwdTipsBg"></div>';
if(_bg.length === 0) {
_bg = $(bg_HTML);
}
$body.append(_bg);
_bg.css({
position : 'absolute',
top : '0px',
left : '0px',
width : $window.scrollLeft()+$window.width()+'px',
height : $doc.height(),
'z-index' : zindex
});
return _bg;
};
/*弹出框半透明背景的设置*/
/*绑定事件*/
var bindClick = function(obj,handlerevent){
obj.bind("click",function(e){
e.PReventDefault();
bgShadow(1001);
var select=$(this).attr('contentid');
var onLineId=$(this).attr('id');
var pwdTips=$(select);
if(handlerEvent!=null)
{
handlerEvent($(this));
}
pwdTips.show();
pwdTips.find(".closeBtn,.diaSmtRst").click(function(){
pwdTips.hide();
var _bg = $('div.pwdTipsBg');
_bg.remove();
});
pwdTips.find('#onLineId').val(onLineId);
});
};
var show=tabLi.find("dt"),
addPanelBtn=$(".addPanelBtn"),
clickBtn=$(".clickBtn");
var setValue= function(obj){
if($(obj).is('.addPanelBtn'))
{
$('#opename').attr('value',"");
$('#pwdRest').find('#userName').show();
}
else
{
$('#pwdRest').find('#userName').hide();
$('#opename').attr('value',obj.text());
$("input.shareId").attr('value',obj.attr('id'))
}
}
$(function(){
bindClick(show,setValue);
bindClick(addPanelBtn,setValue);
bindClick(clickBtn,setValue);
});
})
所有的弹出内容根据情况做判断显示,获取相应的值,先根据触发的类型判断是修改密码或者添加用户客服,然后再显示相应的弹出内容
相关推荐
- 网页前端技术排行
-
- 1【第六章】Foundation之按钮和下拉功能 - Web前端
- 2jQuery编写widget的一些技巧分享 - Web前端
- 3基于jquery的滚动条滚动固定div(附演示下载) - Web前端
- 4在Mac/PC上远程调试iPhone/iPad上的网页 - Web前端
- 5jQuery实例教程:制作网页中可折叠的面板 - Web前端
- 6分析Iconfont-阿里巴巴矢量常用图标库 - Web前端
- 7JS网页制作实例:标签云 - Web前端
- 8[Web前端]用javascript实现默认图片替代未显示的图片 - Web前端
- 9分享精心挑选的12款优秀jQuery Ajax分页插件和教程 - Web前端
- 最近发表
-
- WordPress随机显示特色图片插件:Random Post Thumbnails
- KeePass实现Chrome浏览器自动填充密码方法一
- LNMP一键包nginx 301强制跳转到https教程
- KeePass实现Chrome浏览器自动填充密码方法二
- #建站# 免费的VPS管理软件Xshell8/Xftp8中文版下载
- 使用Xshell 8连接VPS教程_电脑登录vps的方法
- WordPress评论界面添加烟花????效果
- 不同浏览器书签同步方案:坚果云+Floccus_详细使用教程
- iOS端KeePassXC客户端APP:Strongbox Password Safe
- 给WordPress评论中的Gravatar头像图片添加ALT属性


