用$.getJSON() 和$.post()获取第三方数据做页面 ——惠品折页面(1)
用$.getJSON() 和$.post()获取第三方数据做页面
首页 index.html 页面
需要jquery 和 template-web js文件 可以直接在官网下载

中间导航条的固定

可以在导航添加一个动态class值 class值 的css样式 position :fixed ;
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<link rel="stylesheet" href="index.css">
<title>惠品折首页</title>
</head>
<body> <header>
<div id="top">
<img src="http://m.huipinzhe.com/static/img/logo.jpg" alt="logo">
<input type="text">
<a href="category.html" target="_self"><img src="./images/menu.png" alt="search"></a> </div>
</header>
<img id="banner" src="http://huipinzhe-img-03.b0.upaiyun.com/banner1009/梁荷750.png" alt="">
<img id="banner1" src="./images/banner.png" alt="">
<div id="mainMenuBarAnchor"></div>
<div id="mainMenuBar">
<ul id="ul"> </ul>
</div>
<div id="bottom">
<a href="index.html"><img src="data:images/home.png" alt=""></a>
<a href="specialList.html"><img src="data:images/juan.png" alt=""></a>
<a href="find.html"><img src="data:images/miao.png" alt=""></a>
<a><img src="data:images/my.png" alt=""> </a>
</div>
<section id="container"><section> <script id="goods" type="text/html">
{{each rows good }}
{{if good.itemType=="TIANMAO"}}
<div class="good">
<img src=" {{good.image}}">
<div>
<p><span>天猫</span>{{good.title}}</p>
<p class="zi">活动价¥{{good.phoneActivityPrice}} </p>
<p class="tu"><div>{{good.originPrice}}</div><div>立即抢购</div></p>
</div>
</div>
{{else if good.itemType=="TAOBAO"}}
<div class="good">
<img src=" {{good.image}}">
<div>
<p><span>淘宝</span>{{good.title}}</p>
<p class="zi">活动价¥{{good.phoneActivityPrice}} </p>
<p class="tu"><div>{{good.originPrice}}</div><div>立即抢购</div></p>
</div>
</div> {{/if}} {{/each}} </script>
<script src="jquery.js"></script>
<script src="template-web.js"></script>
<script src="index.js"></script>
</body>
</html>
首页css 样式 index.css
*{
box-sizing: border-box;
}
html{
height: 100%;
}
body{
height: 100%;
margin:;
padding:;
background-color: gainsboro;
}
header{
background-color: white;
height: 8%;
position: fixed;
top:;
left:;
right:;
box-shadow: 0 0 10px gainsboro;
z-index:;
}
#top{
display: flex;
align-items: center;
height: 100%;
/* background-color: red; */
position: relative;
}
#top >img:nth-child(1){
width: 140px;
margin-left: 20px;
}
#bottom{
position: fixed;
bottom: 0px;
z-index:;
width: 100%;
height: 8%;
background-color: white;
display: flex;
justify-content: space-around;
}
#bottom>a{
display: inline-block;
height: 100%;
}
#bottom>a>img{
display: inline-block;
height: 100%;
}
#top>input{
margin-left: 30px;
border-color: gainsboro;
background-color: gainsboro;
height: 60%;
width:70%;
border:none;
border-radius: 35px;
}
#top>img:nth-child(3){
width:80px;
height: 80%;
position: absolute;
right: 10px;
}
#banner{
/* display: block; */
margin-top: 13% ;
width: 100%;
margin-bottom: 15px;
}
#banner1{
/* margin-top: 13%; */
width: 100%;
}
#ul>li:first-child{
color:red;
border-bottom: 2px solid red;
}
#ul >li{
list-style: none;
display:inline-block;
color:black;
margin-left:50px;
font-size:30px;
font-weight:;
line-height: 80px;
}
#mainMenuBar{
width:100%;
white-space:nowrap ;
overflow-x: scroll;
background-color: white;
z-index:;
}
.stick {
border-top: 8px solid gainsboro;
margin-top: 13.5% ;
position:fixed;
top:;
}
#container{
height: 100%;
width:100%;
overflow: scroll;
}
.good{
width:100%;
font-size: 30px;
background-color: white;
padding-top:15px;
margin-bottom: 30px;
}
.good >img{
width: 40%;
display: inline-block;
}
.good>div{
display: inline-block;
width: 55%;
}
首页js文件 index.js
$.getJSON('http://m.huipinzhe.com/h5/home/gethomepage',function(data){
console.log(data);
$('#banner').attr('src',data.data.HomeModelList[0].rows[0].image);
var labels=data.data.labels;
console.log(labels);
for(var i=0;i<labels.length;i++){
$('#ul').append('<li class="'+labels[i].id+'">'+labels[i].label+'</li>');
}
$(document).ready(function() {
var $window = $(window),
$mainMenuBar = $('#mainMenuBar'),
$mainMenuBarAnchor = $('#mainMenuBarAnchor');
$window.scroll(function() {
var window_top = $window.scrollTop();
var div_top = $mainMenuBarAnchor.offset().top;
if (window_top > div_top) {
$mainMenuBar.addClass('stick');
$mainMenuBarAnchor.height($mainMenuBar.height());
} else {
$mainMenuBar.removeClass('stick');
$mainMenuBarAnchor.height(0);
}
});
});
//初始值
//商品列表初始
clickTurn(-1);
//导航鼠标的点击事件
$('#ul>li').click(function(){
$(this).css({
color:'red',
'border-bottom': '2px solid red',
}).siblings().css({
color:'black',
'border-bottom':'none',
});
var labelId=$(this).attr('class');
//清空container中的内容 添加新的内容
// $('#container').empty();
clickTurn(labelId);
});
});
/* 推荐商品列表 */
function clickTurn(labelId){
var page=0;
var isFinsh;
function getDataByPageNumber(){
isFinsh=false;
page++;
if(page>12){
alert('已经加载完毕');
return;
}
$.post('http://m.huipinzhe.com/h5/home/gethomepage',{labelId : labelId ,pageNum : page},function(data){
console.log(data.data.onlineData);
var data=data.data.onlineData;
var html=template('goods',data);
$('#container').html(html);
isFinsh=true;
});
}
getDataByPageNumber();
$('#container').scroll(function(event){
console.log("滚动");
if(event.target.scrollTop+event.target.clientHeight>event.target.scrollHeight-10){
console.log('获取下一页数据');
if(isFinsh){
getDataByPageNumber();
}
}
});
}
用$.getJSON() 和$.post()获取第三方数据做页面 ——惠品折页面(1)的更多相关文章
- [ 转 ]jquery的ajax和getJson跨域获取json数据
目前浏览器端跨域访问常用的两种方法有两种: 1.通过jQuery的ajax进行跨域,这其实是采用的jsonp的方式来实现的. jsonp是英文json with padding的缩写.它允许在服务器端 ...
- jquery的ajax和getJson跨域获取json数据
目前浏览器端跨域访问常用的两种方法有两种: 1.通过jQuery的ajax进行跨域,这其实是采用的jsonp的方式来实现的. jsonp是英文json with padding的缩写.它允许在服务器端 ...
- 【CSS系列】获取实时数据做进度
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- ASP.NET框架获取数据字典数据做成树的格式
private List<TreeEntity> treeList = new List<TreeEntity>();//创建一个树的List集合 public ActionR ...
- jq:get获取json数据并以表格形式生成到页面
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- 使用$.getJSON("xx.json" ,function(data){ console.logy(data); })在本地获取 json数据
使用 $.getJSON() 在本地获取 json数据 默认在谷歌,火狐等其他浏览器,不允许在本地获取服务器数据 所以不能在本地中使用 但是可以IE 11 中又可以使用,所以,测试时建议在IE浏览器 ...
- 使用JSONP,jQuery的ajax跨域获取json数据
网上找了很多资料,写的不错,推荐下: 1.深入浅出JSONP--解决ajax跨域问题 (http://www.cnblogs.com/chopper/archive/2012/03/24/240394 ...
- JQuery 获取json数据$.getJSON方法的实例代码
这篇文章介绍了JQuery 获取json数据$.getJSON方法的实例代码,有需要的朋友可以参考一下 前台: function SelectProject() { var a = new Array ...
- $.getJSON获取json数据失败
首先简单介绍下 $.ajax $.get $.post $.getJSON 的区别和用法 $.ajax中有一个type属性,专门用来指定是get请求还是post请求的分别对应的就是$.get和$ ...
随机推荐
- Java之String、StringBuffer、StringBuilder
String.StringBuffer和StringBuilder的理解 这三个类学过已经有一段时间了,想通过这篇文章再将其复习一下,以求温故知新. 首先说一下三者各自的特性 String: Stri ...
- 201521123034《java程序设计》第2周学习总结
1. 本章学习总结 - String对象创建之后不能再进行修改,修改字符串使用Stringbuilder: - 检测字符串内容是否相同不用==,用equals的方法检测: - 使用一维数组的两个步骤: ...
- linux下修改rm命令防止误删除
前言:相信很多朋友都遇到过在linux下用rm命令误删除文件的时候,此刻的心中仿佛有无数的羊驼在奔腾.那么怎么防止这种情况发生呢?当然是有方法的,我们可以写一个shell脚本,改变一下rm命令的作用. ...
- 创建maven项目pom.xml第一行报错
之前也创建过几次maven项目,也是第一行报错,之前直接是右键项目强制更新maven好像就解决了,这次遇见这个问题使用这个方法好像不起作用了,给的一堆英文报错又看不懂,幸好在网上看见路人甲大神提示,根 ...
- Spring第二篇【Core模块之快速入门、bean创建细节、创建对象】
前言 上篇Spring博文主要引出了为啥我们需要使用Spring框架,以及大致了解了Spring是分为六大模块的-.本博文主要讲解Spring的core模块! 搭建配置环境 引入jar包 本博文主要是 ...
- XML解析【介绍、DOM、SAX详细说明、jaxp、dom4j、XPATH】
什么是XML解析 前面XML章节已经说了,XML被设计为"什么都不做",XML只用于组织.存储数据,除此之外的数据生成.读取.传送等等的操作都与XML本身无关! XML解析就是读取 ...
- Spring注解@Qualifier
在使用Spring框架中@Autowired标签时默认情况下使用 @Autowired 注释进行自动注入时,Spring 容器中匹配的候选 Bean 数目必须有且仅有一个.当找不到一个匹配的 Bean ...
- 监控-CPU使用率
原始脚本来自TG,自己对部分脚本做了调整,分享出来仅供参考,请勿整篇Copy! 使用以下语句获取[CPU使用率] USE [DBA_Monitor] GO /****** 对象: StoredProc ...
- 记录兼容IE8中发现的一些问题
1.new Date().getYear(); chrome下:获取的是1900年之后的年份,如2017年获取的是117 IE8下:获取的是公元年份,如2017获取的是2017 解决方案:使用new ...
- 转换时间对象和字符串对象&添加时间
/* *基本思路,将字符串时间转化为时间对象,通过毫秒数来加减时间,然后在转化为字符串输出 */ //转化字符时间yy-mm-dd hh:mm:ss 为时间对象 使用split进行字符串的分割,取 ...