<!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. JavaScript 中对变量和函数声明的“提前(hoist)”

    hoist vt.升起,提起; vi.被举起或抬高; n.起重机,升降机; 升起; <俚>推,托,举; 这篇文章不讲英语,但是对于某些英语单词找不到很好的翻译,一上来就列出“hoist”这 ...

  2. 【Win 10 应用开发】UI Composition 札记(五):灯光

    UI Composition 除了能够为 UI 元素建立三维空间外,还有相当重要的一个部件——灯光.宇宙万物的精彩缤纷,皆源于光明,光,使我们看到各种东西,除了黑洞之外的世界都是五彩斑谰的.故而,真要 ...

  3. ThreadLocal 原理解析

    1.对Thread local 理解 ThreadLocal 是为了解决线程间同步而创建的一个新的思路.简单来说就是每个线程都保存一个变量副本. 如果在Thread 内部定义一个field变量,也可以 ...

  4. Java 核心内容相关面试题【4】

    spingmvc 和 structs的区别 我们用struts2时采用的传统的配置文件的方式,并没有使用传说中的0配置. spring3 mvc可以认为已经100%零配置了(除了配置spring mv ...

  5. 如何在工程中使用axis2部署webservice

    有一个最简单的方法就是把axis2.war中的内容作为Web Project的基础, 来进行开发. 不过为了更清楚的了解如何在一个已有的Web Project中嵌入axis2, 那就手动来配置.大致分 ...

  6. Linux下gcc编译生成动态链接库*.so文件并调用它

    动态库*.so在linux下用c和c++编程时经常会碰到,最近在网站找了几篇文章介绍动态库的编译和链接,总算搞懂了这个之前一直不太了解得东东,这里做个笔记,也为其它正为动态库链接库而苦恼的兄弟们提供一 ...

  7. 前端面试题(5) 列举5种IE haslayout的属性及其值

    haslayout 是Windows Internet Explorer渲染引擎的一个内部组成部分.在Internet Explorer中,一个元素要么自己对自身的内容进行计算大小和组织,要么依赖于父 ...

  8. C#参考之sealed密封类(转)

    C# 语言参考 sealed(C# 参考) 当对一个类应用 sealed 修饰符时,此修饰符会阻止其他类从该类继承.在下面的示例中,类 B 从类 A 继承,但是任何类都不能从类 B 继承. 1     ...

  9. formData实现图片上传

    前言 在 上一篇 已经实现了图片预览,那么如何上传图片呢?有两种思路: 1.将图片转化为dataURL(base64),这样就成为了一串字符串,再传到服务端.不过这样缺点很多,数据量比转换之前增加1/ ...

  10. 维多利亚的秘密 golang入坑系统

    原文在gitbook,字字原创,版权没有,转载随意. 在写本文的前一天,2017维密在上海开始了. 为了纪念屌丝界的盛世,特为本节起名维多利亚的秘密.现在的社会,要想出名只有抓眼球.所以写份技术文章, ...