前言 Bob大叔提出並發揚了S.O.L.I.D五大原則,用來更好地進行物件導向編程,五大原則分別是: The Single Responsibility Principle(單一職責SRP) The Open/Closed Principle(開閉原則OCP) The Liskov Substitution Principle(裡氏替換原則LSP) The Interface Segregation Principle(介面分離原則ISP) The Dependency Inversion
就把遇到的問題記錄一下。寫這篇文章時用的TinyMCE編輯器就很強大,但畢竟是第三方的,項目也考慮了這些,如果做些自訂的東西不太方便。 1. 判斷游標位置的元素(或者選中的部分)的樣式。游標位置改變的時候更新工具列對應按鈕的樣式。什麼情況下游標的位置會改變呢?是鍵盤方向鍵和滑鼠點擊,於是就判斷鍵盤事件和滑鼠事件來執行游標移動的處理。 a. 獲得游標位置或選中元素:首先getSelection,建立range。然後獲得元素,擷取到元素之後就可以或得樣式、tagName等等,做更多的操作,運行代碼:
先看個例子: 複製代碼 代碼如下:var Class = { create : function () { return function () { this.initialize.apply(this, arguments); } } } var A = Class.create(); A.prototype = { initialize:function(){ //todo } test:"abc" } var a = new A(); 這是很多jser構建類和執行個體化對象的過程,
JS指令碼: 複製代碼 代碼如下:<script language="javascript" type="text/javascript"> var interval = 1000; function ShowCountDown(year, month, day, divname) { var now = new Date(); var endDate = new Date(year, month - 1, day, 14, 07); var leftTime =
複製代碼 代碼如下:<script type="text/javascript"> function createArray() { var arr = new Array(); for (var i = 0; i < 10; i++) { arr[i] = function () { return i; } } return arr; } var funcs = createArray(); for (var i = 0; i < funcs.length; i++)
測試環境(用戶端瀏覽器 ) IE6,IE7, IE8相容模式, IE8 Firefox 3.6.8, google chrome 5.0.375.125 先來說明兩個函數的標準定義。 elementNode.setAttribute(name,value) name 必需。規定要設定的屬性名稱。 value 必需。規定要設定的屬性值。 該方法把指定的屬性設定為指定的值。如果不存在具有指定名稱的屬性,該方法將建立一個新屬性。 elementNode.getAttribute(name) name