<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0" />
<style type="text/css"> *{
padding: 0;
margin: 0;
} body{
font-family: "宋体";
}
.conut{
height: 50px;
}
.conut span{ font-size: 18px;
padding: 0 15px;
line-height: 50px;
color: #009966;
} .movieList{ border-top:2px solid #096;
} .movieList li{
display: inline-block;
padding:0 30px;
line-height: 36px;
font-size: 14px;
border-right:1px solid #FFF ;
color: #666;
cursor: pointer;
}
.movieList li:hover{
color: #009966;
}
.movie{
width: 500px;
margin: 0 auto;
margin-top: 200px;
text-align: center;
color: #096;
}
</style>
</head>
<body> <div class="conut">
<span>正在上映</span>
<span>(20)</span>
</div>
<ul class="movieList">
<!--<li>战狼2</li>
<li>机器人9号</li>
<li>蜘蛛侠·英雄归来</li>
<li>敦伦克尔</li>
-->
</ul> <div class="movie"> </div>
</body>
<script type="text/javascript" src="https://code.jquery.com/jquery-3.2.1.js"></script> <script> var apiURL = "http://api.douban.com"; var movieApi = {
inTheaters:"/v2/movie/in_theaters",//正在热映
comingSoon:"/v2/movie/coming_soon",//即将上映
moviedetail:"/v2/movie/subject/" //电影条目信息
} $(function(){ $.ajax({
type:"get",
url:apiURL+movieApi.inTheaters,
data:{ },
dataType:"jsonp",
async:true,
success:function(data){
//console.log(data)
$(".conut span").first().html(data.title);
$(".conut span").last().html("("+data.count+")"); var movieItem="";
$.each(data.subjects, function(i,item) {
movieItem+="<li data-itemid="+escape("电影"+item.id)+">"+item.title+"("+item.year+")</li>";
/*var escapes = escape(item.title); //escape 转码
console.log(escapes);
var unescapes = unescape(escapes); //unescape 解码
console.log(unescapes);*/
}); $(".movieList").empty().append(movieItem);
}
});
}) $(".movieList").on("click","li",function(e){
var data_itemId =unescape($(this).attr("data-itemid"));
var itemid = data_itemId.substring(2,data_itemId.length)
$.ajax({
type:"get",
url:apiURL+movieApi.moviedetail+itemid,
dataType:'jsonp',
async:true,
success:function(data){
console.log(data);
var movie = "<img src="+data.images.medium+"/><h1>"+data.title+"</h1>"
$(".movie").empty().append(movie);
},
error:function(xhr,em,e){
if(xhr.status == 404){
$(".movie").empty().append("<div style='text-align:center'>该电影已下架</div>")
}
}
});
}) </script>
</html>

》》豆瓣API的更多相关文章

  1. 一个豆瓣API的使用——拒绝思维定式

    好久没写博客了,最近一直在用豆瓣API爬数据,不知道以前的是什么样,毕竟刚开始用没多久,就用最新的V2版本,以前的不更新了,可以参照https://developers.douban.com/wiki ...

  2. 小试牛刀--利用豆瓣API爬取豆瓣电影top250

    最近得赶进度爬点东西,对于豆瓣,它为开发者提供了API,目前是v2版本,目前key不对个人开放,但是可以正常通过其提供的API获取数据.豆瓣V2版API权限分3类:公开.高级.商务,我们用开放基本数据 ...

  3. 【jquery mobile笔记二】jquery mobile调用豆瓣api示例

    页面主要代码如下 <div data-role="page" id="page1">     <div data-role="hea ...

  4. 使用OAuth2.0访问豆瓣API

    如何计算某个用户的access_token过期时间?开发者可以通过两种方式计算:用户授权时,oauth2/access_token接口返回的expires_in值就是access_token的生命周期 ...

  5. 豆瓣api之OAuth认证

    豆瓣api通过OAuth允许第三方应用访问用户数据,所以OAuth认证就是我们整个project的基础了. OAuth认证听起来挺神秘,其实挺简单的. 现在的大型网站的开放平台的认证几乎都是采用OAu ...

  6. 《云阅》一个仿网易云音乐UI,使用Gank.Io及豆瓣Api开发的开源项目

    CloudReader 一款基于网易云音乐UI,使用GankIo及豆瓣api开发的符合Google Material Desgin阅读类的开源项目.项目采取的是Retrofit + RxJava + ...

  7. vue中Axios请求豆瓣API数据并展示到Swipe中

    vue中Axios请求豆瓣API数据并展示到Swipe中 1.首先是安装Axios: 安装方法cnpm install axios --save 等待npm安装完毕: 2.在main.js中引入axi ...

  8. 豆瓣api开发

    前面有说过豆瓣API的开发,在做一些开源项目的时候,很多时候会用到豆瓣API接口,拿过来做测试,现在只是对豆瓣API开发做一些简单的梳理: 豆瓣API开发的接口: https://developers ...

  9. 豆瓣API接口开发,结合angularJS来做,感觉爽歪歪!

    第一次做还是先说下API 是什么鬼? API : application program interface 应用程序编程接口: 有那些常见的API: webAPI : 通过WEB方式提供结构叫 WE ...

  10. vue调用豆瓣API加载图片403问题

    "豆瓣API是有请求次数限制的”,这会引发图片在加载的时候出现403问题,视图表现为“图片加载不出来”,控制台表现为报错403. 其实是豆瓣限制了图片的加载,我自己用了一个办法把图片缓存下来 ...

随机推荐

  1. js 函数声明和函数表达式

    在ECMAScript中,创建函数的最常用的两个方法是函数表达式和函数声明,因为ECMA规范只明确了一点:函数声明必须带有标示符(Identifier)(就是大家常说的函数名称),而函数表达式则可以省 ...

  2. 基于node的websocket示例

    websocket:用语服务器端主动向客户端推送消息 本例基于koa框架编写用例:服务器端需要安装相关模块 koa koa-socket co等 服务器端脚本:(需要安装相关模块 koa koa-so ...

  3. html5客户端本地存储之sessionStorage及storage事件

    首先您可以看一下<JavaScript本地存储实践(html5的localStorage和ie的userData)>sessionStorage和上文中提到的localStorage非常相 ...

  4. 史考特证券(Scottrade)填写提款申请表的要求以及注意事项

    史考特证券(Scottrade)填写申领表的要求以及注意事项. 需要注意的几点: 1. 史考特账户名称 就是你的名字,例如 San Zhang 2. 账户居住地址,就是你开户申请时候填写的地址, 你也 ...

  5. 移动端1px 边框完整方案(四个方向)

    使用stylus(预处理) 需要一个函数接收两个参数 第一个需要在哪个方向出现边框 第二个边框颜色 $border1px(face,$color) 根据传入的方向属性,调整其他参数 l  左右方向 t ...

  6. HTTPCLIENT 模拟登陆

    第一步构建忽略https验证的httpclient public static CloseableHttpClient getHttpClient() throws Exception { SSLCo ...

  7. How To Use Linux epoll with Python

    http://scotdoyle.com/python-epoll-howto.html Line 1: The select module contains the epoll functional ...

  8. centos安装maven,git,mysql

    安装maven1:下载maven包:http://mirror.bit.edu.cn/apache/maven/maven-3/3.5.0/binaries/apache-maven-3.5.0-bi ...

  9. mybatis逆向工程之配置

    逆向工程1.什么是逆向工程mybaits需要程序员自己编写sql语句,mybatis官方提供逆向工程 可以针对单表自动生成mybatis执行所需要的代码(mapper.java,mapper.xml. ...

  10. 一道变态的Javascript面试题

    转载http://cymoft.blog.51cto.com/324099/1260099 1 2 3 4 5 6 7 8 9 f = function() {return true;};  g =  ...