这周学习了jquery的基本知识,DOM、事件、动画,刚好有个弹框效果要做。

实现功能是要求:在页面上点击图片“在线报名”,之后,屏幕变黑,半透明,正中间弹出一个对话框,里面包括报名信息,

用表单实现,右上角需要一个“关闭”。

首先,要确定html的布局,使用div放在

内部,代码如下:

报   名

【关闭】

姓  名:
联系方式:

备  注:

之后,设置css样式:

body{

width: 100%;

height: 100%;

position: relative;

}/*弹框效果*/

#dialog-bg{

position:absolute;

top: 0;

left: 0;

z-index: 10000;

width: 100%;

height: 100%;

background-color:#000000;

opacity: 0.5;

filter:Alpha(opacity=50);/*透明度兼容*/

_top: expression(documentElement.scrollTop + documentElement.clientHeight-this.offsetHeight);

/*ie6中利用position和上面的这条语句,可以实现像fixed的效果*/display: none;

}

.dialog-box{

position: absolute;

z-index: 20000;

left: 50%;

top: 50%;

margin-left: -161px;

margin-top: -151px;

padding-left: 20px;

_margin-left: -161px;

_margin-top: -151px;

_padding-left: 20px;

width: 300px;

height: 300px;

border: 1px solid #f95;

background-color: #FFF0F5;

-moz-border-radius: 20px;

-webkit-border-radius: 20px;

border-radius: 20px;

display: none;

}

.dialog-title{

float: left;

width: 300px;

height: 40px;

}

.dialog-title p{

display: block;

float: left;

text-align: center;

width: 250px;

height: 40px;

line-height: 40px;

font-size: 18px;

font-weight: bold;

font-family: "宋体";

color: #000;

}

#close-dialog{

float: right;

margin-top: 5px;

_margin-top: 5px;

width: 50px;

height: 30px;

color: #f00;

font-size: 12px;

font-family: "宋体";

cursor:pointer;/*手型*/

}

.dialog-content{

float: left;

width: 300px;

height: 220px;

}

.form-info{

float: left;

margin-top: 10px;

_margin-top: 10px;

width: 300px;

height: 40px;

font-size: 16px;

font-family: "宋体";

color: #000;

}

.form-info input{

width: 150px;

height: 20px;

}

.form-info2{

float: left;

margin-top: 10px;

_margin-top: 10px;

width: 300px;

height: 100px;

font-size: 16px;

font-family: "宋体";

color: #000;

}

.form-info2 p{

display: block;

float: left;

margin-top: 0px;

_margin-top: 0px;

width: 80px;

height: 30px;

font-size: 16px;

font-family: "宋体";

color: #000;

}

.form-info2 textarea{

display: block;

float: left;

width: 170px;

height: 100px;

}

.form-info3{

float: left;

width: 300px;

height: 20px;

_margin-top: 10px;

_margin-top: 5px;

}

.form-info3 input{

display: block;

margin: 0 auto;

margin-top: 10px;

width: 50px;

height: 20px;

cursor:pointer;

}

插入js代码:

$(function(){

//点击图片,弹出对话框

$(".href2").click(function(){

$("#dialog-bg").show();

});

$(".href2").click(function(){

$(".dialog-box").show();

});

$(".href4").click(function(){

$("#dialog-bg").show();

});

$(".href4").click(function(){

$(".dialog-box").show();

});

$("span#close-dialog").click(function(){

$("div#dialog-bg").hide();

});

$("span#close-dialog").click(function(){

$(".dialog-box").hide();

});

});

注意:

布局应将半透明背景设为一个div,而对话框盒子设为另一个div,若把对话框盒子放在透明背景盒子中,则必须注意背景透明的设置方法!!虽然之前放入一个大背景中隐藏与显示,之后,调兼容性特别复杂,后来换了这种布局。

1、一般情况下,我们可以使用css的opacity属性改变某个元素的透明度,但是其元素下的子元素的透明度也会被改变,即使对子元素重新定义也没有用。所以,上面,设置半透明背景时,不能直接使用opacity属性,使用RGBA更好(RGBA在RGB的基础上多了控制alpha透明度的参数)。

2、要实现整个屏幕都是半透明背景,定位,需要设置#dialog-bg的position:fixed;(“ie6不能兼容fixed”)

之前,布局是这样,所以要注意fixed的兼容性。

现在,

_top: expression(documentElement.scrollTop + documentElement.clientHeight-this.offsetHeight);

/*ie6中利用position和上面的这条语句,可以实现像fixed的效果*/

3、注意:背景盒子与对话框盒子的z-index属性值。后者的应比前者的大。

4、ie6与高版本的jquery不能兼容,jquery-1.8以下的可以。(之前看到有可能不能识别$,或者不能用$(function{

……})而应使用$(document).ready(function{

……})  )

5、jquery中动画功能:show() 和 hide(),hide()将所选元素的属性改为display:none;show()则将元素的样式设为先前的显示状态(除none外的值)。

6、ie6与rgba()的兼容性问题:

详细为以下链接:

可以使用

opacity: 0.5;

filter:Alpha(opacity=50);

或者:

rgba+filter实现兼容性的半透明背景效果

background:rgba(0,0,0,0.5);

filter: progid:DXImageTransform.Microsoft.gradient(startcolorstr=#7F000000,endcolorstr=#7F000000);

7、抓手型-CSS

加入属性:cursor:pointer;

8、JQuery:

将背景盒子和对话框盒子CSS都设为display:none;它们都是隐藏状态;

之后,对图片绑定click事件,调用show()可以显示了(整个屏幕变成半透明黑色,出现报名对话框);

点击对话框上的关闭,触发hide()事件。

转载时请注明出处及相应链接,本文永久地址:https://blog.yayuanzi.com/10368.html

微信打赏

支付宝打赏

感谢您对作者Sylvia的打赏,我们会更加努力!    如果您想成为作者,请点我

HTML点击图片出现边框,简单的jQuery实现点击图片出现弹框【原创】相关推荐

  1. jQuery UI dialog实现dialog弹框显示

    实现弹框,比较精美的jQuery.ui.*:来实现,弹框显示: jsp页面代码[jqueryuidialog.jsp]: <%@ page language="java" i ...

  2. Cesium 点击广告牌(Billboard)显示自定义文字信息展示弹框(vue项目记录)

    Vue中Cesium 点击广告牌(Billboard)展示广告牌信息内容功能 原理 实现原理与显示经纬度信息一致,在cesium挂载的dom嵌套children,通过控制子元素的display,控制显 ...

  3. html图片点击左右滑动效果,基于jquery实现点击左右按钮图片横向滚动

    点击左右按钮图片横向滚动jquery,一次滚动四个,图片滚动完成,自动回到第一个版面: 效果图如下: 点击左右按钮图片横向滚动 * { margin:0; padding:0;} body { fon ...

  4. 基于jQuery点击圆形边框弹出图片信息

    分享一款基于jQuery点击圆形边框弹出图片信息.这是一款鼠标经过图片转换成圆形边框,点击可弹出文字信息.效果图如下: 在线预览   源码下载 实现的代码. html代码: <div id=&q ...

  5. php点击按钮显示隐藏代码,jQuery中点击按钮实现显示与隐藏的方法

    jQuery能够简单快捷的实现很多功能,因此在前端开发中被广泛使用,正在学习jQuery的小伙伴,你会用jQuery实现点击显示再次点击隐藏的效果吗(即jQuery二次点击隐藏)?这篇文章就和大家讲讲 ...

  6. JQuery实现点击按钮切换图片(附源码)--JQuery基础

    JQuery实现切换图片相对比较简单,直接贴代码了哈,有注释噢!疑问请追加评论哈,不足之处还请大佬们指出! 1.案例代码: demo.html: <!DOCTYPE html> <h ...

  7. 点击按钮重新加载ajax,Jquery AJAX点击链接,然后重新加载页面

    我审查了其他帖子和一些帮助我,但因为我不精通JQuery或AJAX,我想确保我正在做我需要正确的.Jquery AJAX点击链接,然后重新加载页面 在我的主页(基本URL)上,我有2个不同的输出,基于 ...

  8. jquery 实现点击图片居住放大缩小

    jquery 实现点击图片居住放大缩小 该功能是基于jquery实现的,所以 第一步则是引入jquery jquery下载地址:https://jquery.com/download/ 或者使用此时调 ...

  9. jQuery绑定点击事件和改变事件的几种方式以及多个元素绑定多个事件

    jQuery绑定点击事件和改变事件的几种方式以及多个元素绑定多个事件 简单的html页面: <!DOCTYPE html> <html lang="en"> ...

最新文章

  1. 关于select函数
  2. 前端开发中的 正则表达式 及常用正则表达式大全
  3. centos7 tomcat8 配置 java web环境 熵池不够大 启动慢问题
  4. 【数学建模】MATLAB应用实战系列(九十)-变异系数法应用案例(附MATLAB和Python代码)
  5. Java注释Override、Deprecated、SuppressWarnings详解
  6. getchar的利用
  7. 设计模式C++实现(5)——桥接模式
  8. 用友BIP|YonBuilder+APICloud 双平台,“1+1>N”的低代码战略
  9. 3D渲染集群,听说过吗?
  10. dtu转发虚拟服务器,DTU转发云服务器
  11. android别踩白块小游戏,手摸手带你实现 小游戏别踩白块儿 -- 内有游戏链接
  12. Virtual Friends HDU - 3172(并查集)
  13. 使用 git tag 给项目打标签
  14. windows 剪贴板监控
  15. 水晶苍蝇拍(14):战胜人性,值得珍藏的投资感悟!
  16. 学习之旅-计算语言学工作者需要了解的数学知识
  17. 使用了未定义的类_解决方法
  18. 【Maven】项目打包-war包-Jar包[IDEA将项目打成war包]
  19. Linux USB 驱动开发实例(七)—— 基于USB 总线的无线网卡浅析
  20. 数通技术-网络层协议及IP编址

热门文章

  1. 【分享贴】教师资格证高中数学笔试经验分享贴
  2. cips2016+学习笔记︱简述常见的语言表示模型(词嵌入、句表示、篇章表示)
  3. bootstrap v3.3.6 版本.table-striped不起作用的问题
  4. 3-4课:各种花式编程语言大放送
  5. 关于视频录制动态贴纸的问题
  6. 解决小程序插槽slot内容显示不对,无论是原生小程序还是uniapp开发的,解决办法如下
  7. CSAPP 第3章 机器级编程课后作业
  8. JAVA实现CRC16校验
  9. oc引导win方法_Win10安装Mac os双系统引导过程总结2020
  10. SAP工具箱 配置导入模板