弹出广告简洁的jquery特效

  BOSS需要一个首页弹出广告的特效,于是webhao在粽子节前夕,熬夜做出一个手机端广告弹出特效,点击tochch me小手,出现一个带有白色幕布和广告图片的背景,再次点击屏幕效果消失,首页恢复正常。

jQuery代码:

<script>
	$(function(){
		//可视窗口的宽度,高度
		var width=$(window).width();
		var height=$(window).height();
		//文档宽度,高度
		var dWidth=$(document).width();
		var dHeight=$(document).height();
		//幕布遮住所有内容
		$(".screen").css("height",dHeight);
		$(".screen").css("width",dWidth);
		
		//显示图片的宽高为整个屏幕
		$("#pic").css("height",height);
		$("#pic").css("width",width);
		
		//侧边栏按钮的宽度
		var block=$("#touchme").css("width");
		left=parseInt(width)-parseInt(block)-10;
		//使侧边栏按钮居于最右边
		$("#touchme").css("left",left);
		
		/*禁止滚动*/
		var a=function(e){
			e.preventDefault();
			e.stopPropagation();
		}
		//点击touchme,添加禁止滚动事件a
		$("#touchme").click(function(){
			document.addEventListener("touchmove",a,false);
			$(".container").css("display","block");
		})
		//点击白色背景,移除事件a
		$(".container").click(function(){
			if(document.removeEventListener){
				document.removeEventListener("touchmove",a,false);
			}else{
				document.detachEvent("touchmove",a);
			}
			$(".container").css("display","none");
		})
	})
</script>

CSS代码:

<style type="text/css">
	#touchme{
		background: url("img/hi.png") no-repeat;
		width:35px;
		height:35px;
		position:fixed;
		top:50%;
		left:0px;
		z-index:97;
	}
	/*弹窗效果*/
	.container{
		display:none;
	}
	.screen {
	    background: #fff none repeat scroll 0 0;
	    display: block;
	    left: 0;
	    opacity: 0.8;
	    position: absolute;
	    top: 0;
	    width: 100%;
	    height:100%;
	    z-index: 98;
	}
	#pic {
	 	background: rgba(0, 0, 0, 0) url("img/indexshow.png") no-repeat scroll center center / 200px auto;
	    display: block;
		height: 500px;
		/*margin: 45px 0 0 10px;*/
		position: fixed;
	    z-index: 99;
	}
</style>

HTML代码:

<div class="container" >
			<div class="screen">
				<div id="pic"></div>
			</div>	
</div>
<div id="touchme"></div>

期间也遇到一些问题,比如我想获取滚动条到顶部的高度,于是在手机端使用jQuery的scrolltop会失效,这个由于时间问题也没有深究,具体解决方案未知,若开发手机使用移动端框架应该不会存在这个问题。还有,

background: rgba(0, 0, 0, 0) url("img/indexshow.png") no-repeat scroll center center / 200px auto;

center center指图片位于屏幕正中心, / 后面的200px auto指的是图片的宽、高,属于css的新属性。至于为什么要用auto代替高度呢?因为设置具体的高度,图片会变得异常模糊。所以我们在为背景图片设置宽高的时候,尽量只控制宽,让高度auto.











  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要使用jQuery实现弹出页面的效果,你可以按照以下步骤进行操作: 1. 首先,在HTML文件中引入jQuery库文件和相关的CSS和JavaScript文件。可以使用以下代码片段作为参考: ``` <html> <head> <title>jQuery实例1:浮动窗口</title> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <script type="text/javascript" src="jslib/jquery.js"></script> <script type="text/javascript" src="jslib/jquerywin.js"></script> <link type="text/css" rel="stylesheet" href="css/win.css"> </head> <body> <a onclick="showWin()" href="#">弹出窗口</a> <div id="win"> <div id="title">我是标题栏!<span id="close" onclick="hide()">X</span></div> <div id="content">我是一个窗口!</div> </div> </body> </html> ``` 这段代码中,我们引入了jQuery库文件和相关的CSS和JavaScript文件,并创建了一个包含弹出窗口内容的div。 2. 接下来,在JavaScript文件中编写相应的函数来实现弹出窗口的显示和隐藏。可以使用以下代码片段作为参考: ``` function showWin(){ var winNode = $("#win"); winNode.fadeIn("slow"); } function hide(){ var winNode = $("#win"); winNode.fadeOut("slow"); } ``` 这段代码中,我们定义了一个showWin函数和一个hide函数,分别用于显示和隐藏弹出窗口。在showWin函数中,我们使用jQuery的fadeIn方法来实现淡入效果,在hide函数中,我们使用jQuery的fadeOut方法来实现淡出效果。 3. 最后,在需要触发弹出窗口的地方添加相应的事件处理函数。在上面的HTML代码中,我们在一个链接上添加了onclick事件,当点击这个链接时,会调用showWin函数来显示弹出窗口。 综上所述,以上是使用jQuery实现弹出页面的基本步骤。你可以根据自己的需求进行相应的修改和扩展。 #### 引用[.reference_title] - *1* *3* [jquery实现弹出窗口](https://blog.csdn.net/Baple/article/details/12675587)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [【JQueryJQ实现页面弹出框](https://blog.csdn.net/weixin_44707049/article/details/111472734)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值