Time of Update: 2018-12-07
今天在群裡遇到一道很有意思的題目,大家發揮所能,給出的答案五花八門。特意整理成博文發表出來://原題目:window.alert = function(){};______;alert(1); 填空,使後面的alert(1)能正確彈出,至少列舉兩種不同思路。解法一,建立新的執行環境,使用iframe沙箱window.alert = function(){};window.alert=function(obj){ var
Time of Update: 2018-12-07
http://www.hemin.cn/test/現在圖片網與商城流行一種叫“瀑布流”的布局,我們公司也不小心得了“流行性感冒”,要搞這個。於是我就寫了一個,現在再用我的架構mass重寫一下,發布出來,順便宣傳一下我的架構。瀑布流其實沒什麼東西,就是列布局與無限拖的結合。由於要支援IE6就沒有CSS3,直接對列進行絕對位置。列就是一個DIV。然後就是列中每個板塊的添加問題,我管它為磚頭。每添加一塊磚頭前,比較一下哪列最短,就往哪裡塞。最後就是無限拖,太easy了。加之,我的架構對樣式,事件等設定
Time of Update: 2018-12-07
像百度與google,當我們往搜尋方塊輸入東西時就會出現一排列表提示使用者有什麼熱門或適合的候選詞,這種效果就叫suggest。本文將一步步教你如何設計它。首先,用到的架構當然是我的架構mass
Time of Update: 2018-12-07
我的模板系統升一下級, 繼續在新公司裡面用。 現在幾在互連網公司沒有不用javascript模板了, 什麼TX, 百度, 新浪, 360什麼的, 最後瀑布流的流行, 裡面又有許多用到模板。本版本就是改回v6的形態,後端資料還是帶@前端才方便查看與調試。昨天也與一TX前端工程師討論過這個必要性。取得模板中的需要填寫的變數,再與後端傳過來的JSON進行比較,儘早進行資料驗證。這種技術,可以看一看PHP的變數命名就知了,帶是帶$首碼。在之前的版本中,如果輸出語句帶分號或逗號是會報錯的
Time of Update: 2018-12-07
最近一直攻略node.js,發現ejsv9在後端的視圖層有點力不從心。後端是模板的最大使用者,因此拼字串必須會死翹翹。通常來說,我們一個action對應一個模板,它應該是只含body部分的HTML,另外,還有一個layout,它是包含head與body的底部。它們兩個加起來,加個模型層的資料產生一個真正的頁面返給前端。但產生這頁面不像普通的挖坑填數位過程,像ejs、mustache、micro-Templating、doT.js就是如此。不過有的模板可以套嵌大量的邏輯,有的不能,像mustach
Time of Update: 2018-12-07
定義標準IE:document.body.clientWidth ==> BODY對象寬度document.body.clientHeight ==> BODY對象高度document.documentElement.clientWidth ==> 可見地區寬度document.documentElement.clientHeight ==> 可見地區高度FireFox:document.body.clientWidth ==>
Time of Update: 2018-12-07
先來看兩段代碼,若是你不能完全理解它們的原理,則本文對你還是有一點參考作用的。 首先是我寫的一段用來類比私人成員的代碼:function Foobar(parameter) {var privateVariable = "I'm private Variable";var privateFunction = function() {return "I'm privateFunction and privateVariable is : " +
Time of Update: 2018-12-07
CSS3提供兩種方式來實現動畫,transition與animation。animation涉及自訂一種為“@keyframes”的東西,這個需要動用到insertRule太複雜了,因此本文跳過它。有人它為transform也算一種,但它是靜態,需要結合transition才能變成動態,因此也跳過。transition主要就是以下四個屬性,後面跟著的是它們的初始值transition-property: all;transition-duration: 0s;transition-timing-
Time of Update: 2018-12-07
原文(被牆):http://www.2ality.com/2012/06/dense-arrays.html 一般來說,JavaScript中的數組是稀疏的,也就是說,數組中的元素之間可以有空隙,因為一個數組其實就是一個索引值映射.本文解釋了如何建立稀疏數組和不稀疏的數組. 1.稀疏數組建立一個指定長度的稀疏數組很簡單:> var a = new Array(3);> a[ , , ]> a.length3>
Time of Update: 2018-12-07
javascript數組是一個逆天的存在,到了ecma262v5,它已經是堆棧,列隊及迭代器的合體。有時候我們不需要這麼強大的東西,這隻要考慮到for迴圈太麻煩了,我們只需要非常簡單的遍曆,於是想用普通對象類比一個就是。首先是堆棧,先進後出 function Stack(){ } Stack.prototype = { add: function(el, pt){
Time of Update: 2018-12-07
WebGL 是一項在網頁瀏覽器呈現3D畫面的技術,有別於過去需要安裝瀏覽器外掛程式,通過 WebGL 的技術,只需要編寫網頁代碼即可實現3D映像的展示。WebGL可以為 HTML5 Canvas 提供硬體3D加速渲染,這樣 Web 開發人員就可以藉助系統顯卡來在瀏覽器裡更流暢地展示3D情境和模型了。今天,本文向大家展示8個驚豔的 WebGL 應用實驗。TankWorld使用WebGL技術開發的一款坦克射擊遊戲。Clouds結合Javascript 和 WebGL
Time of Update: 2018-12-07
繼前陣子寫完對象真經後,這篇文章我嘗試儘力的去講透Js中的閉包。這裡要感謝愛民,愛民的書寫得很好,我從中獲益良多。不過這次我打算換一種思路來寫這篇真經,就是採用提問回答的方式,我下面先提出我要回答的問題,如果讀者你都很自信的能夠回答上,那麼就可以考慮幹別的事情去了。如果感覺自己有點把握不準就請給我一步步的定址吧。:)我保證最後你就會豁然開朗,明白閉包的真諦。問題集:什麼是函數執行個體?什麼是函數引用?什麼是閉包?閉包裡有什麼玩意?函數執行個體、函數引用和閉包有什麼聯絡?閉包的產生的情形?閉包中的
Time of Update: 2018-12-07
原文:http://www.iamued.com/qianduan/1645.html今天看到這篇文章,學到了不少東西 特此發出來 和大家分享JavaScript的setTimeout與setInterval是兩個很容易欺騙別人感情的方法,因為我們開始常常以為調用了就會按既定的方式執行, 我想不少人都深有同感, 例如setTimeout( function(){ alert(’你好!’); } , 0);setInterval( callbackFunction ,
Time of Update: 2018-12-07
在JS代碼中寫入function fn(){}或者var fn=function(){}等等,你都可以將其理解為對象,當然還有數組等等。在理解物件導向之前,先瞭解下面幾個東西吧。1.對象方法的調用在js最外層寫的function可以還可以理解為window對象的一個方法。定義的變數也可以稱之為window對象的一個屬性。例如:[javascript] view
Time of Update: 2018-12-07
整理一些JavaScript的IE和Firefox的相容性解決方案,有更好的方法多多交流;1. document.form.item 問題 (1)現有問題: 現有代碼中存在許多 document.formName.item("itemName") 這樣的語句,不能在Firefox(Firefox)下運行 (2)解決方案: 改用 document.formName.elements["elementName"] (3)其它 參見 22. 集合類對象問題 (1)現有問題:
Time of Update: 2018-12-07
比onload更快擷取圖片尺寸文章更新:2011-05-31lightbox類效果為了讓圖片置中顯示而使用預先載入,需要等待完全載入完畢才能顯示,體驗不佳(如filick相簿的全屏效果)。javascript無法擷取img檔案頭資料,真的是這樣嗎?本文通過一個巧妙的方法讓javascript擷取它。這是大部分人使用預先載入擷取圖片大小的例子: var imgLoad = function (url, callback) {02 var img = new Image();03 04
Time of Update: 2018-12-07
constructor:對象的構造器,是一個函數。prototype:構造器的原型,只有函數才具有這個屬性。isPrototypeOf:如果對象 A 存在於 對象obj的原形鏈中,則 A.isPrototypeOf(obj)返回true,而obj必定繼承了A 的屬性。__proto__:訪問對象的原型鏈在當前對象的上一級對象,即對象的父級對象,非W3C 或 ECMAscript 標準,是瀏覽器對原型繼承 的一種實現手段,存在於firefox 和 chrome ,IE下不存在這個屬性。js
Time of Update: 2018-12-07
在javascript中,對象實際上就是一個雜湊表,比如下面這個user對象:function user(n, a){ this.name = n; this.age = a; this.toString = function() { return "Name:" + this.name + ", Age:" + this.age; }}var u = new user("tom", 18);for (var k in u) {
Time of Update: 2018-12-07
javascript的分號代表語句的結束符,但由於javascript具有分號自動插入規則,所以有部分人以為不用寫,讓人比較模糊不清,在一般情況下,一個換行就會產生一個分號,但實際可能不是這樣,也就是說在javascript中換行可能產生分號,也可能不產生,是否自動插入分號,主要看上下行。在 ECMAScript 中對分號自動插入規則也有相應的解釋:空語句,變數語句,運算式語句,do-while 語句,continue 語句,break 語句,return 語句,以及 throw
Time of Update: 2018-12-07
Manning jQuery in Action Feb.2008.pdf Sams Teach Yourself JavaScript in 24 Hours (2006).chm Beginning Javascript Second Edition(Wrox).chm Javascript Professional Projects Javascript The Definitive Guide 5Th Edition (2006) jQuery and jQuery