Blogger Information
Blog 6
fans 0
comment 0
visits 3746
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
jQuery作业——2019.01.22
CY的博客
Original
751 people have browsed it

一、获取滚动值案例

实例

<!DOCTYPE html>
<html>
<head>
  <title>获取滚动值案例</title>
  <link rel="icon" type="image/x-icon" href="images/2.png"> 
   <script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
   <style type="text/css">
      *{margin: 0;padding: 0;}
      .content{ width:100%;height:60px;
                background: rgba(160,3,162,0.1);
                box-shadow: 1px 3px 7px #ccc;
                line-height: 60px;
                position: fixed;
              }
      .content_2{ background: rgba(160,3,162,0.4);}
      form{width: 500px;height: 35px;position: relative;margin: 0 auto;}
      input{width:480px;height: 35px;border-radius: 20px;border:none;outline: none;padding-left:20px;}
      button{width: 70px;height:35px;order:none; 
            border-top-right-radius: 20px;border-bottom-right-radius: 20px;border: none;
            color: #fff;position: absolute;right:0;top:14px;
            outline: none;font-weight: bold;
            background: rgba(160,3,162,0.4);
          }
      [placeholder]{color:rgba(160,3,162,0.6)}
      .pic{width: 70%;height: 580px;background: url(images/3.jpg);margin: 0 auto;}
      .box{width: 70%;height:1200px;background:rgba(108,108,106,0.1);margin: 0 auto; }
      
   </style>

</head>
<body> 
<!-- 顶部导航 -->
 <div class="content">
   <form>
    <input type="text" placeholder="# 请输入关键词 #">
    <button>全网搜</button>
  </form>
 </div>
 <!-- 轮播图 -->
 <div class="pic"></div>
 <!-- 页面详情 -->
 <div class="box"></div>
 <script>

    $(function(){
      $(window).scroll(function(){
         //判断滚动条距离顶部距离,如大于导航栏高度则隐藏
        if($(window).scrollTop()>60){
          $('.content').css('display','none')
        }else{
          $('.content').css('display','block')
        }
        //判断滚动条距离顶部距离,如大于轮播图高度则显示
        if($(window).scrollTop()>580){
          $('.content').addClass('content_2').css('display','block')
        }else{
          $('.content').removeClass('content_2')
        }
      })
    })
 </script>
</body>
</html>

运行实例 »

点击 "运行实例" 按钮查看在线实例

二、点击商品选中效果


*自己做了这个案例,点击加入购物车按钮不弹窗,并且打印form列表只有  num=1 ,其他属性不打印,检查多次未发现代码问题,麻烦老师指点下。

实例

<!DOCTYPE HTML>
<html>
<head>
<title>点击商品选中效果</title>
<meta charset="utf-8"/>
 <link rel="icon" type="image/x-icon" href="images/2.png"> 
 <script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
 <style type="text/css">
	* {margin: 0px auto;padding: 0px;}
	.top {width: 402px;height: 35px;
		  line-height: 35px;text-align:center;
		  margin-top: 50px;
		  background: #C40000;color:#fff;
		}
	.main {width: 400px;height: 400px;border: 1px solid #C40000;}
	p {width: 400px;height: 26px;margin-top:10px;}
	b {width: 90px;height: 26px;
	   line-height: 26px;text-align: center;
	   font-size: 12px;color:#838383;
	   border: 1px solid #ccc;   
	   float: left;margin-left: 5px;}
	span {width: 90px;height: 26px;line-height: 26px;
		text-align: center;font-size: 12px;
		color:#838383;border: 1px solid #ccc;
		display: block;float: left;margin-left: 5px;}
	span:hover {cursor: pointer;}
	button {width: 120px;height: 35px;background: #C40000;color: white;border: 0px;}
	button:hover {cursor: pointer;}
	.notice{
		border:0px;
	}
	.select{
		border:2px solid #C40000;
		width: 88px;
		height: 24px;
		line-height: 24px;
		color: red;
	}

</style>

</head>
<body>
  <div class="top">请选择信息后加入购物车</div>
	<div class="main">
		<p class="item" name="version">
			<b class="notice">版本</b>
			<span>ONE A2001</span>
			<span>ONE A0001</span>
			<span>ONE A1001</span>
		</p>
		<p class="item" name="color">
			<b class="notice">机身颜色</b>
			<span>白色</span>
			<span>黑色</span>
			<span>金色</span>
		</p>
		<p class="item" name="type">
			<b class="notice">套餐类型</b>
			<span>标配</span>
			<span>套餐一</span>
			<span>套餐二</span>
		</p>
		<p class="item" name="ram">
			<b class="notice">运行内存</b>
			<span>2GB</span>
			<span>3GB</span>
			<span>4GB</span>
		</p>
		<p class="item" name="rom">
			<b class="notice">机身内存</b>
			<span>16GB</span>
			<span>32GB</span>
			<span>64GB</span>
		</p>
		<p class="item" name="location">
			<b class="notice">产地</b>
			<span>中国大陆</span>
			<span>港澳台</span>
		</p>
		<p class="item" name="price">
			<b class="notice">价格</b>
			<span>999元抢购</span>
		</p>
		<p class="item1" name="num">
			<b class="notice">数量</b>
			<input type="number" value="1" style="width:40px;height:26px;">
		</p>

		<p style="margin-top:30px;margin-left:95px;">
			<button class="bu1" id='sub'>加入购物车</button>
		</p>		
  </div>

  <script type="text/javascript">
  	$(function() {
  		$('span').click(function(){
          if($(this).hasClass('select')){// 匹配span中是否带有class为select
          	$(this).removeClass('select')//含有就清除
          }else{
          	// 没有就添加上select的class名,同时匹配同级span,清除同级其他span中的选中样式
          	$(this).addClass('select').siblings('span').removeClass('select')
          }
  		})
		
		$('#sub').click(function(){
			//建立一个对象,储存信息
			let form={}
			//方便用于判断
			let flag=true
			//each() 方法规定为每个匹配元素规定运行的函数
			// 判断是否每个选项都选中; 没选中则弹窗警告; 选中了则添加至需要发送的表单数据里面
			$('.item').each(function(){
				if($(this).children('span.select').lenght!=1){
					flag=false
				}else{
					let key=$(this).attr('name')
					let value=$(this).children('span.select').html()
					form[key]=value//将键值对一一对应
				}
			})
			//判断***数量是否小于0
			if($('.item1 input').val()<=0){
				flag=false
				alert('***数量不能小于1')
			}else{
				form['num']=$('.item1 input').val()
				console.log(form)
			}
			if(flag){
				alert('可以加入购物车了')
			}

			
			
		})

  	});
  </script>
</body>
</html>

运行实例 »

点击 "运行实例" 按钮查看在线实例

总结:今天学习了addClass\removeClass\hasClass方法添加删除,查找class的方法

Correction status:qualified

Teacher's comments:
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post