前端(移動端)經常用到的一些示例

来源:http://www.cnblogs.com/dinghouchuanqi/archive/2016/06/26/5617546.html
-Advertisement-
Play Games

兩個數組合併與最大值最小值的獲取 //示例二 獲取最大值, var numbers = [5, 458, 120, -215]; var maxInNumbers = Math.max.apply(Math, numbers); //458 console.log("maxInNumbers:" + ...


兩個數組合併與最大值最小值的獲取

var alldata =[],alldata1=[];

alldata1.concat(alldata2);

 ////示例一:數組追加

var array1 = [12 , "foo" , {name:"張三"} , -2458];

 var array2 = ["李四" , 555 , 100];

 Array.prototype.push.apply(array1, array2); //數組追加

   //示例二 獲取最大值,

   

   var numbers = [5, 458, 120, -215];

  var maxInNumbers = Math.max.apply(Math, numbers);   //458

    console.log("maxInNumbers:" + maxInNumbers);

  maxInNumbers = Math.min.call(Math, 5, 458, 1120, -215); //458

     

  

reduce的用法

 

function reduce()
        {
            var arry = [1, 7, 5, 7, 1, 3];
            var sum = arry.reduce(function (pre, cur, index, arr) {
                console.log(pre + "______" + cur + "___" + index + "___" + arr);
                return pre + cur;
            },0);
               console.log("和為:"+sum);//輸出和為:24
        }

 

  

checked文本類容獲取和設置值

function chekecked()
        {
            console.log($("#selxueli").find("option:selected").text());//大學本科畢業
            var text = "中等專科畢業";
            $("#selxueli option").each(function () {
                if ($(this).text() == text) {
                    $(this).prop("selected", true);
                }
            })
        }
Html:
 <select id="selxueli" class="form-control">
            <option value="8">博士研究生畢業</option>"+
            <option value="7">碩士研究生畢業</option>
            <option value="6" selected>大學本科畢業</option>
            <option value="5">大學專科畢業</option>
            <option value="4">研究生班畢業</option>
            <option value="3">中等專科畢業</option>
            <option value="2">技工學校畢業</option>
            <option value="1">普通高中畢業</option>
            <option value="0">職業高中畢業</option>
        </select>

  

手寫數組快速排序 —— 去重

 Array.prototype.uniqus = function () {
            var res = [];
            var json = {};
            for(var i=0;i<this.length;i++)
            {
                if(!json[this[i]])
                {
                    res.push(this[i]);
                    json[this[i]] =1;
                }
            }
            return res;
        }
        var arr = [112, 112, 34, '你好', 112, 112, 34, '你好', 'str', 'str1'];
        console.log(arr.uniqus());//[112, 34, "你好", "str", "str1"]

  

圓形進度條

此示例需要引用一個js和一個css 即可

 

 1 <body >
 2         <div id="myStat1"  data-dimension="205" data-text="" data-info="" data-width="10" 
 3              data-fontsize="24" data-percent="45" data-fgcolor="#fbd318" data-bgcolor="#e3e3e3" 
 4              data-fill="#fff6ca" data-type="full" >
 5             <span class="circle-text" >66123</span>
 6             <span class="circle-info" >ddd</span>
 7        <canvas width="205" height="205"></canvas></div>
 8     
 9     <link rel="stylesheet" href="jquery.circliful.css" type="text/css" media="screen" />
10     <script type="text/javascript" src="jquery-1.10.2.min.js"></script>
11     <script type="text/javascript" src="jquery.circliful.min.js"></script>
12        <script type="text/javascript">
13 $( document ).ready(function(){
14     $('#myStat1').circliful();
15 });
16      </script>
17     
18 
19 </body>

更簡單的箭頭代碼

 

 

      .box {
    padding:20px;
    width:100px;
    background-color: #fff;
    position: relative;
    border-radius:10px;
}
.top {
    position: absolute;
    top: -20px;
    overflow: hidden;
    border:10px solid transparent;
    border-bottom-color: #fff;
}
.bottom {
    position: absolute;
    bottom: -20px;
    overflow: hidden;
    border:10px solid transparent;
    border-top-color: #fff;
}
.left {
    position: absolute;
    left: -20px;
    overflow: hidden;
    border:10px solid transparent;
    border-right-color: #fff;
}
.right {
    position: absolute;
    right: -20px;
    overflow: hidden;
    border:10px solid transparent;
    border-left-color: #fff;
}
.box-shadow {
    box-shadow: 2px 2px 5px #111;
}

  html 代碼如下:

  <div style="background:#eee;padding-bottom:30px;padding-left:20px;">
      <br /><br />
        <div class="box box-shadow">
            <i class="top"></i>
            top
        </div>
        <br /><br />
        <div class="box box-shadow">
            <i class="bottom"></i>
            bottom
        </div>
        <br /><br />
        <div class="box box-shadow">
            <i class="left"></i>
            left
        </div>
        <br /><br />
        <div class="box box-shadow">
            <i class="right"></i>
            right
        </div>
    </div>

 二維碼生成 

 

  友情說明:

jquery.qrcode.js和qrcode.js兩個js 是必須要引用的
  <div class="demo">
        <h2>拿手機掃一掃</h2>
        <div id="qrcodeTable"></div>
    </div>
    <script src="jquery-1.8.2.js"></script>

    <script type="text/javascript" src="jquery.qrcode.js"></script>
    <script type="text/javascript" src="qrcode.js"></script>
    <script type="text/javascript">
$(document).ready(function(){
    var wenzi = "姓名:張三\n 性別:男性\n 身份證號:3729261990091811** ";
	$("#qrcodeTable").qrcode({
		render	: "table",
		text: utf16to8(wenzi),
		width:"200",
		height:"200"
	});
//這裡是為了轉碼需要的Js方法,如果是英文或者純數字等形式,則不需要 function utf16to8(str) { //轉碼 var out, i, len, c; out = ""; len = str.length; for (i = 0; i < len; i++) { c = str.charCodeAt(i); if ((c >= 0x0001) && (c <= 0x007F)) { out += str.charAt(i); } else if (c > 0x07FF) { out += String.fromCharCode(0xE0 | ((c >> 12) & 0x0F)); out += String.fromCharCode(0x80 | ((c >> 6) & 0x3F)); out += String.fromCharCode(0x80 | ((c >> 0) & 0x3F)); } else { out += String.fromCharCode(0xC0 | ((c >> 6) & 0x1F)); out += String.fromCharCode(0x80 | ((c >> 0) & 0x3F)); } } return out; } }); </script>

  1 <!DOCTYPE html>
  2 <html lang="en">
  3 <head>
  4     <meta charset="UTF-8">
  5     <meta name="viewport" id="viewport" content="width=device-width, initial-scale=1">
  6     <title> 手機側滑事件</title>
  7     <script src="//cdn.bootcss.com/jquery/1.11.3/jquery.min.js"></script>
  8     <style>
  9         *{ padding:0; margin:0; list-style: none;}
 10         header{ background: #ffcb20; border-bottom: 1px solid #ccc}
 11         header h2{ text-align: center; line-height: 54px; font-size: 16px; color: #fff}
 12         .list-ul{ overflow: hidden}
 13         .list-li{ line-height: 60px; border-bottom: 1px solid #fcfcfc; position:relative;padding: 0 12px; color: #666;
 14             background: #f2f2f2;
 15             -webkit-transform: translateX(0px);
 16         }
 17         .btn{ position: absolute; top: 0; right: -80px; text-align: center; background: #f7483b; color: #fff; width: 80px}
 18     </style>
 19     <script>
 20         window.addEventListener('load', function () {
 21             var initX;
 22             var moveX;
 23             var X = 0;
 24             var objX = 0;
 25             window.addEventListener('touchstart', function (event) {
 26                 // event.preventDefault();
 27               
 28                 var obj = event.target.parentNode;
 29                 if (obj.className == "list-li") {
 30                     initX = event.targetTouches[0].pageX;
 31                     objX = (obj.style.WebkitTransform.replace(/translateX\(/g, "").replace(/px\)/g, "")) * 1;
 32                 }
 33                 if (objX == 0) {
 34                     window.addEventListener('touchmove', function (event) {
 35                      
 36                         event.preventDefault();
 37                         var obj = event.target.parentNode;
 38                         if (obj.className == "list-li") {
 39                             moveX = event.targetTouches[0].pageX;
 40                             X = moveX - initX;
 41                             //if (X < -50)
 42                             //{
 43                             //這裡代碼意思為:當滑動當前列,去除其他列的刪除按鈕
 44                             //    $(".list-li").css("-webkit-transform", "translateX(0)");
 45                             //}
 46                             if (X > 0) {
 47                                 obj.style.WebkitTransform = "translateX(" + 0 + "px)";
 48                             }
 49                             else if (X < 0) {
 50                                 var l = Math.abs(X);
 51                                 obj.style.WebkitTransform = "translateX(" + -l + "px)";
 52                                 if (l > 80) {
 53                                     l = 80;
 54                                     obj.style.WebkitTransform = "translateX(" + -l + "px)";
 55                                 }
 56                             }
 57                         }
 58                     });
 59                 }
 60                 else if (objX < 0) {
 61                 
 62                     window.addEventListener('touchmove', function (event) {
 63                         //這裡必須加阻止預設事件,不然,手機端滑動有問題
 64                         event.preventDefault();
 65                         var obj = event.target.parentNode;
 66                         if (obj.className == "list-li") {
 67                             moveX = event.targetTouches[0].pageX;
 68                             X = moveX - initX;
 69                             if (X > 0) {
 70                                 var r = -80 + Math.abs(X);
 71                                 obj.style.WebkitTransform = "translateX(" + r + "px)";
 72                                 if (r > 0) {
 73                                     r = 0;
 74                                     obj.style.WebkitTransform = "translateX(" + r + "px)";
 75                                 }
 76                             }
 77                             else {     //向左滑動
 78                                 obj.style.WebkitTransform = "translateX(" + -80 + "px)";
 79                             }
 80                         }
 81                     });
 82                 }
 83 
 84             })
 85             window.addEventListener('touchend', function (event) {
 86                 var obj = event.target.parentNode;
 87                 if (obj.className == "list-li") {
 88                     objX = (obj.style.WebkitTransform.replace(/translateX\(/g, "").replace(/px\)/g, "")) * 1;
 89                     if (objX > -40) {
 90                         obj.style.WebkitTransform = "translateX(" + 0 + "px)";
 91                     } else {
 92                         obj.style.WebkitTransform = "translateX(" + -80 + "px)";
 93                     }
 94                 }
 95             })
 96 
 97         });
 98         $(function () {
 99             $("#btnoutOK").on("click", function () {
100                 alert("");
101             });
102             $(".btn").each(function () {
103                 $(this).on("click", function () {
104                     alert($(this).attr("id"));
105                 })
106             })
107         })
108 
109     </script>
110 
111 </head>
112 <body>
113 <header>
114     <h2>消息列表</h2>
115 </header>
116 <section class="list">
117     <ul class="list-ul">
118         <li  class="list-li">
119             <div class="con">
120                英國退歐了,是好事還是壞事
121             </div>
122             <div class="btn" id="1234">刪除</div>
123         </li>
124         <li class="list-li">
125             <div class="con">
126                 哇,北韓打算收復歐盟
127             </div>
128             <div class="btn" id="1235">刪除</div>
129         </li>
130         <li class="list-li">
131             <div class="con">
132                 重大消息,A股將站穩3000點
133             </div>
134             <div class="btn" id="1235">刪除</div>
135         </li>
136     </ul>
137 </section>
138 
139 </body>
140 </html>

 滑動刪除:

 

 

好了,星期天休息不容易,寫了一個上午,如果你覺得對你有用,請點個贊,謝謝!

 

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 使用js製作一個簡單的產品放大圖 購物網站的產品頁經常會放有一個產品展示圖區。該圖區有一個功能就是產品圖的放大功能,移動左側的焦點區域,可以放大細節部分觀看,詳情如下圖。實現該功能的方法也非常簡單。 實驗:製作產品焦點放大圖。 所需技能:1、基本的獲取頁面元素的方法; 2、幾個簡單的事件; 3、會使 ...
  • 簡介:jQuery Lightbox圖片放大預覽代碼是一款可以在用戶點擊頁面中的小圖片時,將該圖片的高清版本以Lightbox的方式放大顯示在頁面的中間,提高用戶的體驗度。效果展示 http://hovertree.com/texiao/jqimg/6/效果圖如下: 源碼下載:http://hove ...
  • 1.Ajax:readyState(狀態值)和status(狀態碼)的區別readyState,是指運行AJAX所經歷過的幾種狀態,無論訪問是否成功都將響應的步驟,可以理解成為AJAX運行步驟,使用“ajax.readyState”獲得status,是指無論AJAX訪問是否成功,由HTTP協議根據所 ...
  • 談到閉包,人們常常會把匿名函數和閉包混淆在一起。閉包是指由權訪問另一個函數作用域中的變數的函數。創建閉包的常見方式,就是在一個函數內部創建另一個函數,仍以前面的 createComparisonFunction()函數為例 在標識的部分,它訪問了外部的變數 propertyName 即使這個函數被返 ...
  • 第一部分:用CSS實現佈局 讓我們一起來做一個頁面 首先,我們需要一個佈局。 請使用CSS控制3個div,實現如下圖的佈局。 第二部分:用javascript優化佈局 由於我們的用戶群喜歡放大看頁面 於是我們給上一題的佈局做一次優化。 當滑鼠略過某個區塊的時候,該區塊會放大25%, 並且其他的區塊仍 ...
  • 概述 觀察者模式又叫發佈 訂閱模式(Publish/Subscribe),它定義了一種一對多的關係,讓多個觀察者對象同時監聽某一個目標對象(為了方便理解,以下將觀察者對象叫做訂閱者,將目標對象叫做發佈者)。發佈者的狀態發生變化時就會通知所有的訂閱者,使得它們能夠自動更新自己。 觀察者模式的使用場合就 ...
  • 關於NPM: npm 是 nodejs 的包管理和分發工具。它可以讓 javascript 開發者能夠更加輕鬆的共用代碼和共用代碼片段,並且通過 npm 管理你分享的代碼也很方便快捷和簡單。 一 NodeJs安裝與NPM管理 安裝 前往NodeJs官網,下載安裝包直接安裝。同時NodeJs預設包含N ...
  • 本文收集了多本書里對JavaScript閉包(Closure)的解釋,或許會對理解閉包有一定幫助。 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...