欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

jQuery+HTML5實現(xiàn)手機(jī)搖一搖換衣特效

 更新時間:2015年06月05日 09:58:56   投稿:hebedich  
經(jīng)常我們玩微信都會用到查到附近的人,都是在app上實現(xiàn)手機(jī)搖一搖的功能?,F(xiàn)在,我們將此技術(shù)搬移到手機(jī)web上,供大家學(xué)習(xí),有需要的小伙伴可以參考下。

手機(jī)搖一搖可以應(yīng)用到很多場景中,如搖一搖換抽獎,搖一搖搜歌等。本文我將給大家介紹如何使用HTML5+PHP+jQuery實現(xiàn)手機(jī)搖一搖換衣效果。

注意,這是一篇WEB知識綜合應(yīng)用的文章,閱讀本文前提是,您需要有HTML5,jQuery,PHP,MySQL等相關(guān)方面的基礎(chǔ)知識。

HTML

我頁面中默認(rèn)展示產(chǎn)品信息(某品牌連衣裙產(chǎn)品圖片和文字說明),當(dāng)然實際應(yīng)用中可以從數(shù)據(jù)庫中獲取產(chǎn)品信息。

 
<div id="pro" rel="1"> 
 <p>使勁晃動您的手機(jī)</p> 
 <img src="images/z1.jpg" width="300" height="300"> 
 <p>灰色</p> 
</div> 

然后在頁面中加載jQuery庫文件,同時我們繼續(xù)沿用上一篇文:《用HTML5實現(xiàn)手機(jī)搖一搖的功能的教程》中用到的偵聽手機(jī)搖晃的代碼:shake.js。

 
<script src="jquery.js"></script> 
<script src="shake.js"></script> 

jQuery

我們使用shake.js檢測到用戶手機(jī)搖晃,當(dāng)搖晃發(fā)生時調(diào)用函數(shù)shakeEventDidOccur(),向后臺product.php發(fā)送Ajax請求,后臺程序會根據(jù)提交的請求參數(shù)返回相應(yīng)的JSON數(shù)據(jù)。我們根據(jù)返回的數(shù)據(jù)顯示對應(yīng)的產(chǎn)品圖片和文字信息,實現(xiàn)了換衣的效果。

 
window.onload = function() { 
 var myShakeEvent = new Shake({ 
  threshold: 15 
 }); 
 
 myShakeEvent.start(); 
 
 window.addEventListener('shake', shakeEventDidOccur, false); 
 
 function shakeEventDidOccur () { 
  var pro_id = $("#pro").attr("rel"); 
  $.getJSON("product.php?id="+pro_id,function(json){ 
   if(json.msg==1){ 
    $("#pro").attr("rel",json.pro.id) 
    .html('<img src="images/'+json.pro.pic+'" width="300" height="300"><p>'+json.pro.color+'</p>'); 
   }else{ 
    alert(json.msg); 
   } 
  }); 
 } 
}; 

PHP

后臺product.php根據(jù)接收ajax提交過來的參數(shù)id,查詢數(shù)據(jù)庫中除當(dāng)前id以外的數(shù)據(jù)信息,獲取到相應(yīng)的數(shù)據(jù)集結(jié)果,然后隨機(jī)從數(shù)據(jù)集中取出一組數(shù)據(jù)(因為每次只展示一條數(shù)據(jù)信息),以JSON格式返回給前端調(diào)用,請看代碼:

 
<?php 
//連接數(shù)據(jù)庫 
include_once("connect.php"); 
 
$id = intval($_GET['id']); 
if($id==0) exit; 
//查詢數(shù)據(jù) 
$query = mysql_query("select * from dress where id!='$id'"); 
$total = mysql_num_rows($query); 
$arr = array(); 
if($total==0){ 
 $arr['msg'] = '沒有足夠的衣服!'; 
}else{ 
 $arr['msg'] = 1; 
 while($row=mysql_fetch_array($query)){ 
  $pros[] = array( 
   'id' => $row['id'], 
   'color' => $row['color'], 
   'pic' => $row['pic'] 
  ); 
 } 
 //隨機(jī)取一組數(shù)據(jù) 
 $arr['pro'] = $pros[array_rand($pros)]; 
} 
//輸出JSON格式數(shù)據(jù) 
echo json_encode($arr); 
?> 

當(dāng)然本文只是一個實例應(yīng)用,開發(fā)中你可以根據(jù)實際應(yīng)用優(yōu)化PHP程序代碼,打造符合你項目的優(yōu)質(zhì)PHP代碼,最后奉上mysql數(shù)據(jù)表結(jié)構(gòu):

 
CREATE TABLE IF NOT EXISTS `dress` ( 
 `id` int(11) NOT NULL AUTO_INCREMENT, 
 `color` varchar(30) NOT NULL, 
 `pic` varchar(30) NOT NULL, 
 PRIMARY KEY (`id`) 
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=5 ; 
 
INSERT INTO `dress` (`id`, `color`, `pic`) VALUES 
(1, '灰色', 'z1.jpg'), 
(2, '紫色', 'z2.jpg'), 
(3, '紅色', 'z3.jpg'), 
(4, '藍(lán)色', 'z4.jpg'); 

以上所述就是本文的全部內(nèi)容了,希望大家能夠喜歡。

相關(guān)文章

  • jquery實現(xiàn)兩個圖片漸變切換效果的方法

    jquery實現(xiàn)兩個圖片漸變切換效果的方法

    這篇文章主要介紹了jquery實現(xiàn)兩個圖片漸變切換效果的方法,涉及jquery針對圖片的顯示與隱藏效果的實現(xiàn)技巧,需要的朋友可以參考下
    2015-06-06
  • 推薦30個新鮮出爐的精美 jQuery 效果

    推薦30個新鮮出爐的精美 jQuery 效果

    jQuery 是最流行和使用最廣泛的 JavaScript 框架,它簡化了HTML文檔遍歷,事件處理,動畫以及Ajax交互,幫助Web開發(fā)人員更快速的實現(xiàn)各種精美的界面效果
    2012-03-03
  • jquery 延遲執(zhí)行實例介紹

    jquery 延遲執(zhí)行實例介紹

    延遲執(zhí)行在某些特殊的情況下還是蠻有用的,實現(xiàn)的方法也很簡單,本文有個不錯的示例,有需要的朋友可以參考下,希望對大家有所幫助
    2013-08-08
  • 推薦40個簡單的 jQuery 導(dǎo)航插件和教程(下篇)

    推薦40個簡單的 jQuery 導(dǎo)航插件和教程(下篇)

    在下面的集合中,你會發(fā)現(xiàn)很多便利的 jQuery 導(dǎo)航插件和有用的教程,幫助你實現(xiàn)充滿吸引力的網(wǎng)站導(dǎo)航,讓你網(wǎng)站更有組織性和交互性
    2012-09-09
  • jquery 日期控件datepicker屬性詳細(xì)解析

    jquery 日期控件datepicker屬性詳細(xì)解析

    本文是對jquery中日期控件datepicker的屬性進(jìn)行了詳細(xì)的介紹,需要的朋友可以過來參考下,希望對大家有所幫助
    2013-11-11
  • jQuery+ThinkPHP實現(xiàn)圖片上傳

    jQuery+ThinkPHP實現(xiàn)圖片上傳

    這篇文章主要為大家詳細(xì)介紹了jQuery+ThinkPHP實現(xiàn)圖片上傳,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-07-07
  • 對 jQuery 中 data 方法的誤解分析

    對 jQuery 中 data 方法的誤解分析

    一直以來都認(rèn)為新版本中 data 是調(diào)用 dataset 實現(xiàn)的,對于低版本IE則采用 getAttribute其實一直是我誤解了,也不知道最初這個想法是怎么來的
    2014-06-06
  • jQuery判斷元素是否是隱藏的代碼

    jQuery判斷元素是否是隱藏的代碼

    jQuery判斷元素顯示或隱藏, is 函數(shù),需要的朋友可以參考下。
    2011-04-04
  • jQuery 1.0.2

    jQuery 1.0.2

    jQuery 1.0.2...
    2006-10-10
  • 通過jquery的$.getJSON做一個跨域ajax請求試驗

    通過jquery的$.getJSON做一個跨域ajax請求試驗

    jquery提供了$.getJSON的方法,讓我們可以實現(xiàn)跨域ajax請求,但jqueryAPI上的內(nèi)容實在太少,如何用$.getJSON,請求網(wǎng)站應(yīng)該返回怎樣的數(shù)據(jù)庫才能讓$.getJSON獲取到,下面我就用一個實際例子來說明下。
    2011-05-05

最新評論