Time of Update: 2017-01-19
裡面提到“DOM是UTF-8的篇碼,如果JS庫不是分離的獨立JS檔案,而是包含在DOM裡的,這個問題是不會出現的。然而分離的JS檔案並不是UTF-8編碼,被加庫到UTF-8編碼的DOM裡,中文就出現了亂碼,並影響到引號符,使瀏覽器無法判斷字串結束。解決變法很簡單,JS檔案另存新檔UTF-8編碼格式即可。 ” 所以我修改了JavaScript的引用, <script type="text/javascript" src="**.js"
Time of Update: 2017-01-19
最近項目的部分功能正在重構,前端也基本上推翻了原來的設計,在之前半年的積累上有了新的方案。這幾天在做前端的重構和設計,遇到了一些問題。因為這個模組最主要的還是對時間的控制,大量的操作js的Date對象,可是js原生的Date方法太少了,操作起來太不方便。於是打算擴充下Date的prototype。 長期從事C#的開發,被C#影響著我的思維。C#中DateTime的操作就很方便,於是就參考它對js的Date做了擴充。 複製代碼 代碼如下: //將指定的毫秒數加到此執行個體的值上
Time of Update: 2017-01-19
使用javascript來定義類的規範如下: 指定類名與建構函式,類名(建構函式名)首字母大寫: 複製代碼 代碼如下: function YourClass(){ } 使用"this.成員變數"在其建構函式內定義(偽)私人成員,最好約定(偽)私人成員都以“_”開頭小寫字母組成。這種成員是每個對象都有自己的副本,也叫對象(執行個體)成員。 複製代碼 代碼如下: function Yourclass(_arg1,_arg2,...){ this._arg1=arg1;
Time of Update: 2017-01-19
1)Javascript對象成員實驗: 複製代碼 代碼如下: var f = function d() { this.a = "a";/*這句運行後不存在f.a也不存在d.a存在一個window.a*/ var b = "b";/*局部變數*/ }; var o = { ff: function () { var a = "a"; /*局部變數*/ this.b = "b"; /*這句運行後存在o.b*/ } }; function Man(){ this.age = 30; };
Time of Update: 2017-01-19
測試結果:safari 下是65535個.即 ushort 來儲存(2位元組 16個1).更多的則忽略.其他瀏覽器 至少是int.MaxValue .據說FireFox 甚至是用long 來維護 實參數.其他瀏覽器 也許是int 或者可能是uint .這個就不管了. 畢竟我們知道了瓶頸 在 65535.基於 以上基礎.可以在 串連數組時 考慮優先採用 [].push.apply(a,b) 代替 a=a.concat(b); 我們只需要注意 對於safari 來說
Time of Update: 2017-01-19
下面我就個人觀點猜測一下,並行運算將會怎樣支援前端javascript的. 1 不太可能的進化 顯示線程的支援 如果在Javascript中支援顯示線程,那麼可能是一種災難,目前的瀏覽器解析Javascript並執行都是在瀏覽器的ui線程中工作的. 比如你可以在Javascript中運行while(true),這時瀏覽器介面就會停止回應.或者通過我之前的文章(編譯Javascript引擎,為JavaScript提供睡眠功能:http://www.cnblogs.com/ioriwellings/
Time of Update: 2017-01-19
複製代碼 代碼如下: //初始化導航背景,iframe容器 function fnDaoHangBg() { var h = fnGetHeight(),w = fnGetWidth();//擷取背景視窗大小 if(!$('divDaoHangBg')) { var div = $C('div');//建立背景蒙板 div.id = 'divDaoHangBg'; div.style.backgroundColor = 'black'; div.style.position =
Time of Update: 2017-01-19
本篇作為開發學習筆記之一。 [文] 在web開發中經常遇到需要加亮滑鼠指向的表格行的情況。首先說說一般的情況。 ·簡單嘗試 CSS2中允許我們對HTML元素使用hover偽類,這極大的方便了對於表格的樣式的控制。 我們從一個小例子開始: XHTML(只列出了表格部分,請自行補完頁面,本例在Transational的DTD下通過): 複製代碼 代碼如下: <table class="datatable" cellspacing="0"> <thead> <tr>
Time of Update: 2017-01-19
tip.js 複製代碼 代碼如下: function tips(obj,tag){ var tip = document.createElement('div'),arg= arguments[2],left,top; //建立tipbox var bodywid= document.documentElement.clientWidth; //這裡也可以替換為容器的寬度$(id).outerWidth(); var abs = obj.getElementsByTagName(tag);
Time of Update: 2017-01-19
複製代碼 代碼如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type"
Time of Update: 2017-01-19
JavaScript 載入器在 Web 開發中是非常強大和有用的工具。目前流行的幾個載入器,像 curljs、LABjs 和 RequireJS 使用都很廣泛。他們功能強大的,但有些情況下可以有更簡單的方案。 如果你正在使用 jQuery,有一個內建的方法可以用來載入指令碼。如果你想消極式載入外掛程式或任何其他類型的指令碼,都可以使用這種方法。下面給大家介紹如何使用它。 實現方法 jQuery 內建有 getScript 方法來載入一個指令碼,處理返回的結果可以有幾種方法來實現。最基本的用法
Time of Update: 2017-01-19
複製代碼 代碼如下:/** * 折半尋找字元在數組中的位置(有序列表) * @param array 被檢索的數組 * @param x 要尋找的字元 * @type int * @returns 字元在數組中的位置,沒找到返回-1 */ function binarySearch(array,x){ var lowPoint=1; var higPoint=array.length; var returnValue=-1; var midPoint; var found=false;
Time of Update: 2017-01-19
The problem: scripts block downloadsLet's first take a look at what the problem is with the script downloads. The thing is that before fully downloading and parsing a script, the browser can't tell what's in it. It may contain document.write() calls
Time of Update: 2017-01-19
caller : functionName.caller 返回調用者。 看看下面的函數,大家可以複製到VS中執行下 複製代碼 代碼如下: function caller() { if (caller.caller) { alert(caller.caller.toString()); } else { alert("函數直接執行"); } } function handleCaller() { caller(); } handleCaller(); caller();
Time of Update: 2017-01-19
JavaScript 使用關鍵字 function 定義函數。函數可以通過聲明定義,也可以是一個運算式。函式宣告在之前的教程中,你已經瞭解了函式宣告的文法 :function functionName(parameters) {執行的代碼}函式宣告後不會立即執行,會在我們需要的時候調用到。執行個體function myFunction(a, b) {return a * b;}函數運算式JavaScript 函數可以通過一個運算式定義。函數運算式可以儲存在變數中:執行個體var x =
Time of Update: 2017-01-19
一.prototype原型對象,需要注意的原則是: (1). 使用原型可以大量減少每個對象對記憶體的需求量,因為對象可以繼承許多屬性。 (2). 即使屬性在對象被建立之後才被添加至原型中,對象也能夠繼承這些屬性。 範例程式碼: 複製代碼 代碼如下: <script type="text/javascript"> function print(msg) { document.write(msg,'<br/>'); } function printhr() {
Time of Update: 2017-01-19
第一種算是比較常見了,通過閉包Store Value從而實現accessor,適用於所有瀏覽器. 複製代碼 代碼如下: function Sandy(val){ var value = val; this.getValue = function(){ return value; }; this.setValue = function(val){ value = val; }; } //usage var sandy = new Sandy("test"); sandy.value //
Time of Update: 2017-01-19
查看了一下代碼,發現跳轉連結中使用的是location,而直接使用A產生的連結,在點擊跳轉時,卻不會彈出新的頁面。 解決: 通過JS指令碼,來類比點擊了A這樣的連結,而不使用location試了一下: 複製代碼 代碼如下:function go_link(url) { var link = document.createElement("a"); link.href = url; document.body.appendChild(link); link.click(); }
Time of Update: 2017-01-19
古人有"授之以魚,不如授之以漁" ,沒有老師,就只能自己學"漁"了。還是從簡單的開始吧! 下面的這幾句代碼是最熟悉不過的了,但是你知道為什麼這麼寫嗎?為什麼在頁面中加上這幾句代碼,jQuery對象就已經被引入了。 複製代碼 代碼如下: (function($){ //功能的實現code })(jQuery); 我就從這個開始了!程式員都懂得如何google和baidu。同樣我也一樣...噢!原來這是javascript的匿名函數。
Time of Update: 2017-01-19
軟體的長期價值直接源於其編碼品質。在它的整個生命週期裡,一個程式可能會被許多人閱讀或修改。如果一個程式可以清晰的展現出它的結構和特徵,那就能減少在以後對其進行修改時出錯的可能性。編程規範可以協助程式員們增加程式的健壯性。所有的JavaScript代碼都是暴露給公眾的。所以我們更應該保證其品質。保持整潔很重要。JavaScript檔案JavaScript程式應獨立儲存在尾碼名為.js的檔案中。JavaScript代碼不應該被包含在HTML檔案中,除非這是段特定只屬於此部分的代碼。在HTML中的Ja