Time of Update: 2015-06-19
標籤:javascript 裝飾器 aop 眾所周知裝飾器模式用於給對象在運行期間動態增加某個功能,職責等。相較通過繼承的方式來擴充對象的功能,裝飾器顯得更加靈活,首先,我們可以動態給對象選定某個裝飾器,而不用hardcore繼承對象來實現某個功能點。其次:繼承的方式可能會導致子類繁多,僅僅為了增加某一個單一的功能點,顯得有些多餘了。裝飾器經典實現首先來看看傳統的decorator的實現吧!假設
Time of Update: 2015-06-19
標籤:因為實驗室項目要用,所以最近在學習OpenLayers,但是從來沒有做過前端呀,坑爹的,硬著頭皮上吧反正正好借這個機會學習一下JS,本來對這門語言也挺感興趣的,多多少少寫過一下JS代碼了,差不多學一些裡面的特殊概念了以前一直覺得閉包這個詞太神秘,所以先選這個概念了參考資料:《JavaScript進階程式設計》 部落格:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Closures(主要是這一篇,代碼來源)
Time of Update: 2015-06-19
標籤:在工作中往往存在跨域的問題 ,跨域是什麼概念就不在這裡了,搜這類問題的肯定已經知道了。下面直接探討jsonp跨域原理jspon跨域原理: 1.動態建立一個script標籤 var script = document.createElement("script"); 2.添加src屬性,value也就是所謂的介面的寫入(註:此處要返回的是一個回呼函數callback;這裡可以省略callback欄位寫成 script.src =
Time of Update: 2015-06-19
標籤:其實ArcGIS API for JavaScript 也已經有兩個例子了,不過就是在一些參數方面,沒有解釋清楚。Arcgis的例子是以Geoserver發布的服務作為舉例的,而這裡是用獨立的GeoWebCache服務WMTS服務的,地址是http://localhost:8080/geowebcache/service/wmts,按照ArcGIS給出的例子調了兩天也沒調出來,例子如下(這已經是我改過的): <script> var map, wmtsLayer;
Time of Update: 2015-06-19
標籤:一、擷取特定元素節點的屬性的值_getAttribute() 1、getAttribute()方法將擷取元素中某個屬性的值。它和直接使用.屬性擷取屬性值的方法有一定區別。<script type="text/javascript"> window.onload = function(){ var box = document.getElementById(‘box‘); alert(box.bbb);
Time of Update: 2015-06-19
標籤:一、通過標籤的id屬性值擷取該標籤節點 接受一個參數:如果找到相應的元素則返回該元素的 HTMLDivElement 對象,如果不存在,則返回 null。<script type="text/javascript"> window.onload = function(){ var box = document.getElementById(‘box‘); //擷取 id 為 box 的元素節點 alert(box.id);
Time of Update: 2015-06-19
標籤: <style type="text/css"> body,div{ margin: 0; padding: 0; font-size: 16px; } html,body{ height: 200%; } #div1{ position:fixed; right:0px;
Time of Update: 2015-06-19
標籤:Best Time to Buy and Sell Stock Say you have an array for which the ith element is the price of a given stock on day i.If you were only permitted to complete at most one transaction (ie, buy one and sell one share of the stock)
Time of Update: 2015-06-18
標籤:JavaScript Number 對象Number 對象屬性屬性描述constructor返回對建立此對象的 Number 函數的引用。MAX_VALUE可表示的最大的數。MIN_VALUE可表示的最小的數。NaN非數字值。NEGATIVE_INFINITY負無窮大,溢出時返回該值。POSITIVE_INFINITY正無窮大,溢出時返回該值。prototype使您有能力向對象添加屬性和方法。Number
Time of Update: 2015-06-21
JavaScript中資料結構與演算法(五):經典KMP演算法,資料結構與演算法kmpKMP演算法和BM演算法KMP是首碼匹配和BM尾碼匹配的經典演算法,看得出來首碼匹配和尾碼匹配的區別就僅僅在於比較的順序不同首碼匹配是指:模式串和母串的比較從左至右,模式串的移動也是從
Time of Update: 2015-06-20
背景圖片滿屏顯示,背景圖片滿屏如何用css背景圖片展開 以及100%
Time of Update: 2015-06-20
$.extend 的一個小問題,$.extend問題最近一直在搞移動端,也由於自己對jQuery比較熟悉,再加上Zepto提供了跟jQuery一樣的API,所以就選擇了Zepto作為開發架構。由於是移動端開發,所以也應用了一些ES5新增的API,比如forEach,下面就是我寫的代碼的一些樣本:list.forEach(function(v) { return
Time of Update: 2015-06-20
詳解AngularJS的通訊機制,詳解angularjs機制現在幾乎滿世界的人都在問! 外面有人麼? 這裡是 USS AngularJS, 我們遇到麻煩了,我們的服務講得是克靈貢語(Klingon) 而我們的控制器不能同它們的Ferengi 指令通訊了. 有人能協助我們麼!我已經不知道有多少次遇到這種有關什麼才是AngularJS裡面的組件通訊的最佳方式這樣的問題了. 很多時候答案都會是為此使用 $rootScope 對象去向任何想要收聽的人廣播$broadcast出一條訊息.
Time of Update: 2015-06-19
測試IE瀏覽器對JavaScript的AngularJS的相容性 這篇文章主要介紹了測試IE瀏覽器對JavaScript的AngularJS的相容性的方法,儘管隨著Windows10的近期上市,IE瀏覽器即將成為曆史...需要的朋友可以參考下 短版本 為確保Angular應用在IE上能夠工作請確認: 1. 在IE7或更早的版本上polyfill JSON.stringify。你可以使用JSON2或JSON3來polyfills。?
Time of Update: 2015-06-19
jQuery開發之DOM操作五CSS-DOM操作CSS-DOM技術簡單來說就是讀取和設定style對象的各種屬性。在jQuery中,可以直接利用css()方法擷取元素的樣式屬性,jQuery範例程式碼如下:$("p").css("color");
Time of Update: 2015-06-19
利用jsonp、iframe和location.hash解決跨域問題幾種解決js跨域的方法js的跨域:由於瀏覽器同源策略,凡是發送請求url的協議、網域名稱、連接埠三者之間任意一與當前頁面地址不同即為跨域。如下樣本: 注意:對於連接埠和協議的不同,只能通過後台來解決。解決辦法:1.script標籤的形式:jsonp2.document.domain3.伺服器代理 4.window.name5.flash6. html5 postMessage7.
Time of Update: 2015-06-19
修改 Jquery Dialog 的位置今天在做一個功能的時候使用到了Jquery
Time of Update: 2015-06-19
舉例詳解AngularJS中ngShow和ngHide的使用方法 這篇文章主要介紹了舉例詳解AngularJS中ngShow和ngHide的使用方法,AngularJS是一款非常熱門的JavaScript架構,需要的朋友可以參考下 今天我們來看看怎樣使用Angular的ngShow 和ngHide 指令來完成它們聽起來應該完成的,顯示和隱藏! 它們應該做的事 ngShow 和ngHide
Time of Update: 2015-06-19
JQuery autocomplete ajax 實現自動完成根據輸入框內容即時查詢展示, 類似百度輸入框效果。廢話不多說, 上代碼。1.引入外掛程式。 <script type="text/javascript" src="${ctx}/js/jqueryUI/jquery.ui.autocomplete.js"></script>2.JS代碼。 $( "#searchStreedRoad_auto"
Time of Update: 2015-06-19
nodeJS 利用xlsx匯出外掛程式匯出excel檔案 (可以設定excel儲存格顏色/寬度)var XLSX = require('xlsx');var _exports = {};module.exports = _exports;_exports.exportXls = function(data) { var ws = { s:{ "!row" : [{wpx: 67}] } }; ws['!cols