Time of Update: 2017-01-19
在網頁中,我們可以將JavaScript代碼放在html檔案中任何位置,但一般放在head或body標籤裡面。一般來說,<script>元素放在哪裡與其的功能作用是緊密相關的,在這裡討論2種情況:1、放在<head>裡將<script>元素放在head中是為了讓瀏覽器在一開始就讀取,<script>元素會在整個網頁最開始解析時就載入執行,其優先次序僅次於<title>元素。然後依次向下解析渲染。應用:比如進行頁面顯示初始化的js必須放在
Time of Update: 2017-01-19
JavaScript的效能問題不容小覷,這就需要我們開發人員在編寫JavaScript程式時多注意一些細節,本文非常詳細的介紹了一下JavaScript效能最佳化方面的知識點,絕對是乾貨。先給大家鞏固下javascript基本文法:javascript基本文法 定義變數統一用var關鍵字文法:var 變數名稱=變數值標示符:①、由字母數字底線構成 不能以數字開頭 不能是關鍵字 嚴格區分大小寫資料類型:數值型:number字串:string布爾型:boolean特殊資料類型:undefined
Time of Update: 2017-01-19
一、針對js檔案的載入位置在HTML檔案中,<script>標籤是可以加在<head>地區和<body>地區的。這裡鑒於JavaScript執行和UI渲染的單線程原因,如果js檔案載入會阻塞後面對於頁面的解析過程,頁面會等到js檔案完全載入並運行後才繼續執行該做的操作。那麼問題就來了,這樣可能會出現頁面空白or卡頓現象。作為一名前端開發,重要的不僅僅止於實現了需求,應該還有優質的使用者體驗。那麼我們就需要消除使用者枯燥的等待,針對這個問題,這裡有本獸想到的兩種
Time of Update: 2017-01-19
一、定義物件導向設計鼓勵將行為分布到各個對象中,把對象劃分成更小的粒度,有助於增強對象的可複用性。但由於這些細粒度對象之間的聯絡激增,又可能反過來降低它們的可複用性。 中介者模式的作用就是解除對象與對象之間的緊耦合關係。二、樣本:購買商品 假設我們正在開發一個購買手機的頁面,購買流程中,可以選擇手機顏色以及輸入購買數量,同時頁面中可以對應展示輸入內容。還有一個按鈕動態顯示下一步操作(該顏色庫存量充足,顯示下一步;否則顯示庫存不足)。 <div>
Time of Update: 2017-01-19
構造器模式簡單描述(看圖):構造器Constructor不能被繼承,因此不能重寫Overriding,但可以被重載Overloading。構造器用於建立特定類型對象——準備好對象以備使用,同時接收構造器可以使用的參數,以在第一次建立對象時,設定成員屬性和方法的值1、建立對象新對象建立的兩種方法var newObject={};var newObject=new object();//object
Time of Update: 2017-01-19
本文執行個體分析了JavaScript物件導向之私人靜態變數。分享給大家供大家參考,具體如下:大家知道,私人執行個體變數的原理是根據範圍。私人執行個體變數是在Javascript的function內部用var關鍵字實現,只在function內部有效。仿照這個,提出私人靜態變數的解決方案:<script language="javascript" type="text/javascript">var JSClass = (function() { var
Time of Update: 2017-01-19
defer和async特性相信是很多JavaScript開發人員"熟悉而又不熟悉"的兩個特性,從字面上來看,二者的功能很好理解,分別是"延遲指令碼"和"非同步指令碼"的作用。然而,以defer為例,一些細節問題可能開發人員卻並不一定熟悉,比如:有了defer特性的指令碼會延遲到什麼時候執行;內部指令碼和外部指令碼是不是都能夠支援defer;defer後的指令碼除了會順延強制之外,還有哪些特殊的地方等等。本文結合已有的一些文章以及MDN文檔中對兩個特性的闡述,對defer和async進行更全面的研
Time of Update: 2017-01-19
本文執行個體講述了javascript檢測flash外掛程式是否被禁用的方法。分享給大家供大家參考,具體如下:<!doctype html><html lang="en"><head><meta charset="UTF-8"><meta name="Generator" content="EditPlus®"><meta name="Author" content=""><meta
Time of Update: 2017-01-19
Javascript的基本概念 i. javascript語言是網頁中廣泛使用的一種指令碼語言。 ii. Javascript語言的特點:1. 由Netscape公司開發,基於對象和事件驅動並具有一定安全性的指令碼語言。 2. 特點:a) Javascript是一種指令碼語言,同時也是一種解釋性語言;b) Javascript是靠瀏覽器中的javascript解譯器來啟動並執行,與作業環境沒有關係;c)
Time of Update: 2017-01-19
今天碰到一個問題,怎樣把參數變更影響到函數外部,如:<script> var myname = "wood"; A(myname); document.write(myname); function A(n) { n = "Yao";
Time of Update: 2017-01-19
Javascript作為一門指令碼語言,在設計之初並沒有考慮到物件導向的特性。即便到了當今這個遍布現代瀏覽器的年代,各種Javascript 架構/庫如雨後春筍般地瘋狂生長,Javascript中連個 class
Time of Update: 2017-01-19
本文執行個體講解了基於javascript實現隨機顏色變化效果,分享給大家供大家參考,具體內容如下<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <title>隨機顏色變化效果</title> <style type="text/css">#thediv{ width:100px;
Time of Update: 2017-01-19
“DOM3級事件”規定了一下幾類事件UI事件,當使用者與頁面上的元素互動時除法;焦時間點事件,元素獲得或失去焦點;滑鼠事件,通過滑鼠在頁面上執行操作;滾輪事件,使用滑鼠滾輪或類似裝置;文本事件,當使用者在文檔中輸入文本;鍵盤事件,通過鍵盤在頁面上執行操作;合成事件,當為IME(Input Method
Time of Update: 2017-01-19
在觸發DOM上的某個事件時,會產生一個事件對象event。DOM中的事件對象相容DOM的瀏覽器會將一個event對象傳入到事件處理常式中。event對象包含與建立它的特定事件有關的屬性和方法。除法的事件類型不一樣,可用的屬性方法就不一樣。不過,所有的事件都會有下表列出的成員。下面列出了 2 級 DOM 事件標準定義的屬性: bubbles: 返回布爾值,指示事件是否是起泡事件類型。 cancelable: 返回布爾值,指示事件是否可擁可取消的預設動作。 currentTarget:
Time of Update: 2017-01-19
localStorage主要用來替代cookie,解決cookie(可參考cookie使用要點)讀寫困難、容量有限的問題。localStorage有以下幾個特點1.localStorage是一個普通對象,任何對象的操作都適用。2.localStorage對象的屬性值只能是字串。 這個需要特別注意了,假設我們要儲存一個對象到localStorage中,可以使用拼接的方式。如var obj = {"na=me": "chua",age: 9}//拼接到localStoragevar str = "
Time of Update: 2017-01-19
本文執行個體為大家介紹了javascript圖片切換的兩種方式,迴圈切換以及順序切換的執行個體代碼,分享給大家供大家參考,具體內容如下<html> <head> <meta charset="utf-8"> <style> p{margin:0;} input{border:none;outline: none;margin:0;padding:0;} img{width:300px;height:300px;}
Time of Update: 2017-01-19
一、JavaScript範圍JavaScript變數實際上只有兩種範圍,全域變數和函數的內部變數。在函數內部任何一個地方定義的變數(var scope)其範圍都是整個函數體。全域變數:指的是window對象下的對象屬性。範圍劃分:基於上下文,以函數進行劃分的,而不是由塊劃分的。強調兩點:1. 在同一範圍中,JavaScript是允許變數的重複定義,並且後一個定義將覆蓋前一個定義。2. 函數內部如果不加關鍵字var而定義的變數,預設為全域變數。var scope="global";
Time of Update: 2017-01-19
單例模式也稱作為單子模式,更多的也叫做單體模式。為軟體設計中較為簡單但是最為常用的一種設計模式。單例模式的介紹: 在應用單例模式時,產生單例的類必須保證只有一個執行個體的存在,很多時候整個系統只需要擁有一個全域對象,才有利於協調系統整體的行為。比如在整個系統的設定檔中,配置資料有一個單例對象進行統一讀取和修改,其他對象需要配置資料的時候也統一通過該單例對象來擷取配置資料,這樣就可以簡化複雜環境下的組態管理。
Time of Update: 2017-01-19
本文執行個體講解原生JavaScript實現捲軸效果的相關代碼,分享給大家供大家參考,具體內容如下原理是對滑動條塊進行監聽,按下滑鼠按鍵後,監聽滑鼠移動,然後根據滑動條塊移動的百分比算出捲動區域的滾動程度,用marginLeft進行滾動,具體的寫在注釋裡。整體弄成了一個對象,防止各種亂七八糟的資料汙染全域變數。另外,對象內部調用的函數也都寫到了物件建構函數的裡面,由於對象範圍鏈的原理,外部無法進行調用,防止不小心在外部調用。<!DOCTYPE
Time of Update: 2017-01-19
本文執行個體講述了javascript實現全形轉半形的方法。分享給大家供大家參考,具體如下:function fullChar2halfChar(str){ var result = ''; for (i=0 ; i<str.length; i++) { code = str.charCodeAt(i);//擷取當前字元的unicode編碼 if (code >= 65281 && code <= 65373)//在這個unicode編碼範圍中的是所有的英文字母已經各種字元 {