基于JQuery及AJAX实现名人名言随机生成器

这是我刚接触AJAX的时候做的一个小应用,主要功能如下:

1.点击按钮可以随机生成一句名人名言及其作者名字,如果没有作者名字,则显示“Unknown”。
2.点击按钮可以把名人名言分享到推特或者微博。

HTML:

<div class="container-fluid text-center">
 <h1>
  Random Quote Generator
 </h1>
 <div class="well quote-area">
  <span class="quote">
  </span>
  <span class="author">
  </span>
 </div>
 <div class="btns">
  <button class="btn btn-default btn-lg" id="tweet">
   <i class="fa fa-twitter" aria-hidden="true">
   </i>
    Tweet
  </button>
  <button class="btn btn-default btn-lg" id="weibo">
   <i class="fa fa-weibo" aria-hidden="true">
   </i>
    Weibo
  </button>
  <button class="btn btn-default btn-lg" id="change">
   <i class="fa fa-exchange" aria-hidden="true">
   </i>
    Get Quote
  </button>
 </div>
</div>
<footer class="text-center">
 Designed by
 <a href="http://blog.csdn.net/alenhhy" rel="external nofollow" target="_blank">
  Alen Hu
 </a>
</footer>

JQuery:

$(document).ready(function() {
 var quote, author; 

 function getNewQuote() {
  $.ajax({
   type: "get",
   url: "http://api.forismatic.com/api/1.0/",
   jsonp: 'jsonp',
   dataType: 'jsonp',
   data: {
    method: 'getQuote',
    lang: 'en',
    format: 'jsonp'
   },
   success: function(response) {
    quote = response.quoteText;
    author = response.quoteAuthor;
    $('.quote').text('\"' + quote + '\"');
    if (author) {
     $('.author').text('by ' + author);
    } else {
     $('.author').text('by Unknown');
    }
   }
  });
 } 

 getNewQuote(); 

 $('#change').on('click',
 function(event) {
  event.preventDefault();
  getNewQuote();
 }); 

 $('#tweet').on('click',
 function(event) {
  event.preventDefault();
  window.open('http://twitter.com/intent/tweet?text=' + encodeURIComponent(quote + ' by ' + author));
 }); 

 $('#weibo').on('click',
 function(event) {
  event.preventDefault();
  window.open('http://v.t.sina.com.cn/share/share.php?title=' + encodeURIComponent(quote + ' by ' + author));
 })
});

*forismatic的API可以获取名人名言,但是只有英语和俄语版本的...不过中文类似的API也有很多的啦,实现原理都差不多。

DEMO在这儿,欢迎来FORK:Random Quote Generator

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • js jquery获取随机生成id的服务器控件的三种方法

    由于ASP.NET网页运行后,服务器控件会随机生成客户端id,jquery获取时候不太好操作,google了下,总结有以下3种方法: 服务器控件代码:<asp:TextBox ID="txtUserID" runat="server"></asp:TextBox> 1. $("#<%=txtUserID.ClientID%>").val(); 2. $("input[id*=txtUserID]&qu

  • jquery+php随机生成红包金额数量代码分享

    本文实例讲述了jquery+php实现的随机生成红包金额数量特效.分享给大家供大家参考.具体如下: jquery+php实现的随机生成红包金额数量特效是一段实现了可以将一定金额的钱生成多个不同金额的红包的效果代码,红包数量与金钱可以自己设定. 运行效果图:                              -------------------查看效果 下载源码------------------- 小提示:浏览器中如果不能正常运行,可以尝试切换浏览模式. 为大家分享的jquery+ph

  • ajax 数据库中随机读取5条数据动态在页面中刷新

    不能用数据库中的Top,后面发现了用这样一个方法可以实现...现就这个方法总结写了一个页面.有兴趣的朋友们可以一起学习下.... 前台代码:  复制代码 代码如下: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="ajaxRandomData.aspx.cs" Inherits="ajaxRandomData" %> <!DOCTYPE html

  • Js 代码中,ajax请求地址后加随机数防止浏览器缓存的原因

    看到别人写的JS,ajax请求地址后加随机参数,比如XXXX?t= + new Date().getTime(). 一开始搞不懂为什么,网上查了资料,原因是防止浏览器缓存. 浏览器为了提高用户访问同一页面的速度,会对页面数据进行缓存.当url请求地址不变时, 有时候会导致浏览器不发送请求,直接从缓存中读取之前的数据. 如果数据改变了,而没加随机数,读取的数据会跟之前一样. 加上随机数,就是欺骗浏览器url改变了,会每次都向服务器发送请求而不去读缓存

  • 基于JQuery及AJAX实现名人名言随机生成器

    这是我刚接触AJAX的时候做的一个小应用,主要功能如下: 1.点击按钮可以随机生成一句名人名言及其作者名字,如果没有作者名字,则显示"Unknown". 2.点击按钮可以把名人名言分享到推特或者微博. HTML: <div class="container-fluid text-center"> <h1> Random Quote Generator </h1> <div class="well quote-are

  • php基于jquery的ajax技术传递json数据简单实例

    本文实例讲述了php基于jquery的ajax技术传递json数据简单实现方法.分享给大家供大家参考,具体如下: html页面: <html> <head> <meta http-equiv="content-type" content="text/html;charset=utf-8" /> <script type="text/javascript" src="jquery-1.8.2.mi

  • 基于JQuery的$.ajax方法进行异步请求导致页面闪烁的解决办法

    情景 目前有个需求是在文本框填入内容,自动触发keyup事件,下拉列表会自动过滤相应的选项,但是使用了$,ajax后发现,每次触发事件时,都导致整个网页闪烁,触发了全局ajax事件 代码片段 $.ajax({ type: "POST", url: root + "/xxx, data: requestData, dataType: "json", success: function(data){ // 清空列表 $("#formOpinion #

  • 基于jQuery的ajax方法封装

    ajax (ajax开发)简介 AJAX即"Asynchronous Javascript And XML"(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术. AJAX = 异步 JavaScript和XML(标准通用标记语言的子集). AJAX 是一种用于创建快速动态网页的技术. 通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新.这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新. 在实际的项目里,ajax的应用频率很高

  • 基于JQuery的Ajax方法使用详解

    如下所示: $.ajax的主要参数: url: '_请求的地址', type: 请求类型 get & post data: '请求的参数, success:回调函数 $.ajax({ url: '_api/01.check.php', type: 'get', data: 'name=' + $('inputName').val(), success: function (data) { console.log(data); } } }) jQuery的一些属性: $('xx').find('x

  • 基于jQuery实现Ajax验证用户名是否可用实例

    本文实例为大家分享了jQuery ajax简单案例-验证用户名是否可用的具体代码,供大家参考,具体内容如下 HTML <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> <script type="text/javascript" src="/jquery_aj

  • 基于jQuery使用Ajax动态执行模糊查询功能

    使用Ajax动态执行模糊查询功能 •必须:需要一个执行查询的接口: 说明: 1.搜索模块仅仅使用了boostrap的样式以及Jquery.js文件 2.因为我使用的layui的弹出层里面做的搜索ifram,所以确定和取消按钮的关闭当前页面的功能都是layui的方式,如果不是ifram的窗口仅仅在当前窗口执行的情况下,可以使用下面的语句来进行关闭当前页面的操作: window.opener=null; window.open('','_self'); window.close(); 效果展示: 引

  • 基于jQuery中ajax的相关方法汇总(必看篇)

    前提条件 话说是jquery中的ajax方法,那么前提条件当然是引入jquery啦. <script src="http://libs.baidu.com/jquery/1.9.0/jquery.js" type="text/javascript"></script> 具体方法 ①load() 使用load()方法通过Ajax请求加载服务器中的数据,并把返回的数据放置到指定的元素中,它的调用格式为: load(url,[data],[call

  • 基于jQuery实现Ajax验证用户名是否存在实例

    本文章向大家分享基于jQuery实现的Ajax 验证用户名是否存在的实现代码,需要的码农朋友可以参考一下本文的源代码. jQuery.ajax概述 HTTP 请求加载远程数据. 通过jQuery 底层 AJAX 实现.简单易用的高层实现见 $.get, $.post 等.$.ajax() 返回其创建的 XMLHttpRequest 对象.大多数情况下你无需直接操作该对象,但特殊情况下可用于手动终止请求. $.ajax() 只有一个参数:参数 key/value 对象,包含各配置及回调函数信息.详

  • 基于jQuery的AJAX和JSON实现纯html数据模板

    通过jQuery内置的AJAX功能,直接访问后台获得JSON格式的数据,然后通过jQuer把数据绑定到事先设计好的html模板上,直接在页面上显示. 我们先来看一下html模板: <table id="datas" border="1" cellspacing="0" style="border-collapse: collapse"> <tr> <th> 订单ID</th> &

随机推荐