Time of Update: 2017-01-19
代碼很簡潔,功能很實用,這裡就不多廢話了,直接給大家奉上代碼:/** * Created by Administrator on 15-1-12. */function BroswerUtil() {}BroswerUtil = { //檢測瀏覽器版本 getBrowserVersion: function () { var agent = navigator.userAgent.toLowerCase(); var arr = []; var Browser = "";
Time of Update: 2017-01-19
/** * Created by Administrator on 15-1-19. */function functionUtil() {}functionUtil = { //某個DOM節點是否有某個屬性 hasAttr: function (el, name) { var attr = el.getAttributeNode && el.getAttributeNode(name); return attr ? attr.specified : false },
Time of Update: 2017-01-19
Time of Update: 2017-01-19
複製代碼 代碼如下:/** * param:o表示檢測的值 * return:返回字串"undefined"、"number"、"boolean"、"string"、"function"、"regexp"、"array"、"date"、"error"、"object"或"null" */function typeOf(o){ var _toString = Object.prototype.toString; /
Time of Update: 2017-01-19
Function函數就是對象,代表函數的對象就是函數對象。所有的函數對象是被Function這個函數物件建構出來的。也就是說,Function是最頂層的構造器。它構造了系統中所有的對象,包括使用者自訂對象,系統內建對象,甚至包括它自已。ObjectObject是最頂層的對象,所有的對象都將繼承Object的原型,你也要知道Object也是一個函數對象,所以說Object是被Function構造出來的。Function 與Object 關係圖:複製代碼 代碼如下:<script type="
Time of Update: 2017-01-19
複製代碼 代碼如下:<script type="text/javascript"> function addStyle(stylePath) { var container =
Time of Update: 2017-01-19
本文執行個體講述了JavaScript事件委託用法。分享給大家供大家參考。具體分析如下:一、點擊頁面任何部分觸發事件建立一個script1.js檔案。複製代碼 代碼如下:(function() { eventUtility.addEvent(document, "click", function(evt) { alert('hello');
Time of Update: 2017-01-19
今天我們就來解決上一次拖拽雛形中的一些問題。下面看看有哪些問題?附上上期的Javascript代碼,方便大家查看問題。<script type="text/javascript"> window.onload = function() { var oDiv = document.getElementById("div1"); var disX = 0; var disY = 0; oDiv.onmousedown = function(ev) {
Time of Update: 2017-01-19
拖拽的原理: 其實就是滑鼠與左上方的距離保持不變。我們來看下圖, 這紅點就是滑鼠。拖拽拖拽實際上來說就是通過滑鼠的位置來計算物體的位置,就是這麼簡單,就是這麼任性。 那這個距離怎麼求呢??滑鼠的位置-物體位置的差值就是那個距離 是吧。那這個斜線就是橫線和豎線組成的。我們距離看下程式怎麼做。<div id="div1"> </div>實際上他改的就是某個div 的left top ,那他就動起來了。 那樣式中肯定要有絕對位置是吧。<style
Time of Update: 2017-01-19
今天我們來看看如何讓拖拽的物體不能拖出某個div之外和拖拽的吸附功能上次講到我們的拖拽是不可拖出可檢視區範圍的,在這基礎上我們加個父級的div,不讓他拖出父級。原理和之前的一樣,簡單吧。html代碼:<div id="div2"> <div id="div1"> </div> </div>css代碼:<style type="text/css"> #div1 { width:
Time of Update: 2017-01-19
大家一聽這名字就知道,有了這套架構 網上的效果基本都是可以實現的。實際上之前的運動架構還是有局限性的,就是不能讓好幾個值一塊運動。那這個問題怎麼解決呢? 我們先來看看之前的運動架構function getStyle(obj, name) { if (obj.currentStyle) { return obj.currentStyle[name]; } else { return getComputedStyle(obj, null)[name]; }}function
Time of Update: 2017-01-19
我們看看之前的拖拽在周圍有東西的時候會出現什麼問題? 在進階瀏覽器中不會有啥問題,我們放到IE7下面測試一下,問題就出來了。如圖我們可以很清楚的看到,文字都已經被選中了。那這個使用者體驗很不好,用起來也不方便。順便提一下,我們之前加了一個return false;幫我們解決了很多問題,如果去掉這個的話,chrome也會出現一樣的問題。那麼也就是說這個return false;可以解決chrome ff IE9+ 這些瀏覽器的問題。實際上在我們開發中,頁面上會有許多的元素組成,不可能就一個div,
Time of Update: 2017-01-19
本文執行個體講述了JavaScript中的類與執行個體實現方法。分享給大家供大家參考。具體如下:JavaScript 中沒有父類, 子類的概念, 也沒有class 和 instance 的概念, 全靠 prototype chain來實現繼承. 當尋找一個對象的屬性時, JavaScript 會向上遍曆 prototype chain, 直到找到對應的屬性為止. 有幾種方法, 可以使得 JavaScript 類比出 class 和 instance 的概念.1. 直接使用建構函式來建立對象,
Time of Update: 2017-01-19
最近遇到個有趣的問題:“JS中的值是按值傳遞,還是按引用傳遞呢?” 在分析這個問題之前,我們需瞭解什麼是按值傳遞(call by value),什麼是按引用傳遞(call by reference)。在電腦科學裡,這個部分叫求值策略(Evaluation Strategy)。它決定變數之間、函數調用時實參和形參之間值是如何傳遞的。 按值傳遞 VS. 按引用傳遞按值傳遞(call by
Time of Update: 2017-01-19
Javascript 的數組Array,既是一個數組,也是一個字典(Dictionary).先舉例看看數組的用法。複製代碼 代碼如下:var a = new Array(); a[0] = "Acer"; a[1] = "Dell"; for (var i in a) { alert(i); } 上面的代碼創立了一個數組,每個元素都是一個字串對象。然後對數組進行遍曆。注意 i
Time of Update: 2017-01-19
1、數組的建立var arrayObj = new Array(); //建立一個數組var arrayObj = new Array([size]); //建立一個數組並指定長度,注意不是上限,是長度var arrayObj = new Array([element0[, element1[, ...[, elementN]]]]); 建立一個數組並賦值
Time of Update: 2017-01-19
具體內容請看注釋,這裡就不多BB了,奉上代碼:/// <reference path="vendor/jquery-1.4.1-vsdoc.js" />///檢測表單中的不可為空(.notnull)的驗證/* 時間:2012-6-6 作用:一對form標籤下有多個(包括一個)表單需要提交時,使用js準確的判斷當前按鈕對那些元素做判斷 用法:在form標籤下 找到當前 表單的容器 給予class="form",當前表單的提交按鈕給予 class="check"
Time of Update: 2017-01-19
javascript雖然是一門物件導向的語言,但是它的繼承機制從一開始設計的時候就不同於傳統的其他物件導向語言,是基於原型的繼承機制,但是在這種機制下,繼承依然有一些不同的實現方式。方法一:類式繼承所謂的類式繼承就是指模仿傳統物件導向語言的繼承方式,繼承與被繼承的雙方都是“類”,代碼如下:首先定義一個父類(或超類):function Person(name){ this.name=name; } Person.prototype.getName=function(){
Time of Update: 2017-01-19
注釋裡講解的十分細緻了,這裡就不多廢話了,直接上代碼:<script type="text/javascript"> //ECMA-262把對象定義為:“無序屬性的 集合,其屬性可以包含基本值、對象或者函數” //理解對象,最簡單的方式就是通過建立一個Object的執行個體,然後為它添加屬性和方法 var person = new Object(); person.name = "Xulei"; person.age = "23"; person.job =
Time of Update: 2017-01-19
單體模式作為一種軟體開發模式在眾多物件導向語言中得到了廣泛的使用,在javascript中,單體模式也是使用非常廣泛的,但是由於javascript語言擁有其獨特的物件導向方式,導致其和一些傳統物件導向語言雖然在單體模式的思想上是一致的,但是實現起來還是有差異的。首先來看看傳統物件導向語言對於單體模式的定義:單體模式是只能被執行個體化一次並且可以通過一個眾所周知的訪問點來訪問的類。這個定義有兩點突出了傳統物件導向語言的特徵,即類和執行個體化,所以對於傳統物件導向語言來講,單體模式是建立在其類和執