Javascript–物件導向(三)介面

介面:對實現某一種任務、功能,目的等,所規定的一些原則。程式中的介面:規定好有幾個方法,方法名是什麼。(因程式中要完成任務,都是通過函數或者說方法去實現的。)javascript中的介面:把執行個體出來的某"類型對象"、和執行個體出來的"介面對象",進行一個比較,符合規則,就可以說:這個對象實現了規定的介面;(介面類:通過這個類,來執行個體出不同的介面。即不同的介面執行個體,也就是不同的方法個數和方法名稱) (進行比較:其實質就是判斷子類型執行個體出來的對象,是否有介面對象中所儲存的方法名,還有

javascript–快速排序

function quickSort(arr){ //如果數組只有一個數,就直接返回; if(arr.length<1){ return arr; } //找到中間的那個數的索引值;如果是浮點數,就向下取整 var centerIndex = Math.floor(arr.length/2); //根據這個中間的數的索引值,找到這個數的值;

javascript–事件委託

//事件委託 function f2(d) { document.onclick = function(e) { var e = e || window.event; var target = e.srcElement || e.target; if (target.tagName == “LI”) { ……

javascript–閉包與對象屬性都可以存動態資料

下面是閉包:window.onload = function(){ var oli = document.getElementById("list").getElementsByTagName("li"); for(i=0;i<oli.length;i++){ oli[i].onclick = function(n){ return function(){ alert(n)

javascript–innerHTML、innerText:、outerHTML

用法:<div id="test">   <span style="color:red">test1</span> test2</div>在JS中可以使用:test.innerHTML:  也就是從對象的起始位置到終止位置的全部內容,包括Html標籤。   上例中的test.innerHTML的值也就是“<span style="color:red">test1</span> test2 ”。test.innerText: 

javascript-按圓形排列DIV元素(一)—- 分析

: 一、分析圖:綠色邊框內:外層的DIV元素,相對定位;白色圓形框:輔助分析的想象形狀;白點:為白色圓形的圓心點,中心點,點o;圓心角:角NOG;黃色:需要按圓形排列的,絕對位置的DIV元素;紅色點:為每個黃色DIV的座標點;即絕對位置時的元素,left值 和 top值

javascript–滑鼠點擊頁面,移動DIV

<script type="text/javascript"> //那種方式移動 var choMove = false; //是否綁定過click var isClick = true; //引用DIV var oDiv = null; //引用Input var oInput = null; //封裝事件綁定的通用對象 var evnetUtil = {

Javascript:最高效率的數組亂序方法

常用的辦法是給數組原生的sort方法傳入一個函數,此函數隨機返回1或-1,達到隨機排列數組元素的目的。arr.sort(function(a,b){ return Math.random()>.5 ? -1 : 1;});這種方法雖直觀,但效率並不高,經我測試,打亂10000個元素的數組,所用時間大概在35ms上下(firefox,下同)本人一直具有打破沙鍋問到底的優良品質,於是搜尋到了一個高效的方法。原文見此if (!Array.prototype.shuffle) {

javascript–在firebug調試時用console.log

console.log(); 當你使用console.log()函數時,下面的firebug一定要開啟,不然這函數在用firefox運行時無效且影響正常程式,如果用IE開啟,將會出錯。 第一個參數可以是一個包含格式化預留位置輸出的字串,例如:console.log("The %s jumped over %d tall buildings", animal, count);  格式化字串      類型%s                  字串%d,                

javascript–繼承(原型鏈prototype chaining)

關鍵是把 ClassB 的 prototype 屬性設定成 ClassA 的執行個體。function ClassB(color){ this.color = color; this.sayColor = function(){ console.log(this.color); }}function ClassA(name){ this.name = name; this.sayName = function(){

Javascript–物件導向(二)封裝

寫個小例子:第一步:做一個“手機的類"var MobilePhone = (function(){    …………})()  第二步:考慮這個類,裡需要那些類的私人屬性,這裡我想定義的是執行個體出來手機的數量var MobilePhone = (function(){ //私人屬性 var count = 0; //代表手機的數量})()  第三步:建立一個建構函式,即執行個體時候,對產生的新象的一個初始化,例如屬性,方法的初始化;在這個例子中,每一個手機都會有顏色,

Javascript–閉包引起的IE記憶體泄露

function fors(){ obj_a = obj_b; obj_b.attr = obj_a; } function fors(){ obj_b = {}; obj_b.attr = obj_b; }上面是兩個個很顯示的循環參考,IE中產生了記憶體泄露,由於IE的記憶體回收機制,導至會長期佔用記憶體而不能釋放。 但閉包的記憶體泄露,有些隱蔽。因為閉包的循環參考,是間接的。function iememery(){

javascript–iframe的JS方法,用法!contentWindow 、parent、top、onload

還是先感謝“妙味課堂”出的這期教學視頻!一、在使用iframe的頁面,要操作這個iframe裡面的DOM元素可以用:contentWindow、contentDocument(測試的時候chrom瀏覽器,要在伺服器環境下) 1.先擷取iframe裡面的window對象,再通過這個對象,擷取到裡面的DOM元素例子:var ifr = document.getElementById("iframe");ifr.contentWindow.document.getElementById("XXXXX"

javascript–滑鼠拖動

因為滑鼠沒有拖動事件(按下滑鼠並移動),只有按下,抬起,移動。記得在之前的一個"拖動層"的隨筆中,我實現拖動,是用的一個布爾變數,判斷是否可以拖動某元素。這兩天看了一些東西,發現不需要設這個布爾變數; 實現過程:按下滑鼠的時候,給文檔對象(當然也可以是別的DOM對象)的移動事件綁定一個處理函數,同時也給滑鼠抬起時綁定一個解除的處理函數。 //按下滑鼠並移動時(拖動),調用的函數; function startSelection(event){ ……

javascript–蘋果系統底部菜單–詳細分析

 (不好意,先前發布的是有誤的分析。現在的這個沒問提了!!!)昨天看到了“妙味課堂”的一個蘋果菜單的DEMO。根據裡面提到的“勾股定理”。我自己分析了一下代碼。如下: 先來一吧! 靜止時:  滑鼠滑動時:   一、要實現在的功能或效果:  在滑鼠滑動的靠近其中某一張圖片時,這個圖片會隨著滑鼠向它的靠近而慢慢放大。  a.是“放大”不是“變大”。【放大】是等比例的,而【變大】:不一定是等比例。後面的公式中會體現。  b.這裡的【靠近】:是指靠近圖片的【中心點】。離圖片【中心點】越近,圖片越大,遠離

Javascript-遍曆each與map

目的:擷取每一個多框的ID值;each方法:定義一個空數組,通過each方法,往數組添加ID值;最後將數群組轉換成字串後,alert這個值;$(function(){ var arr = []; $(":checkbox").each(function(index){ arr.push(this.id); }); var str = arr.join(","); alert(str);}) map方法:將每個:checkbox執行return

Javascript–鍵盤事件的組合使用

txt1.onkeydown = function(ev){ var oevent = ev||event; if(oevent.ctrlKey && oevent.keyCode == 13){ ……

javascript–繼承(對象冒充的多重繼承)

function ClassA(color){ this.color = color; this.sayColor = function(){ console.log(this.color); }}function ClassB(name){ this.name = name; this.sayName = function(){ console.log(this.name)

Javascript-邏輯運算子”或”的巧用

domObj.onkeydown = function(e){ if(e){ e.…… }else{ event.…… }}上面例子:如果是Firefox瀏覽器執行if裡面的語句,即使用e這個參數,來引用“事件對象”。     如果是IE瀏覽器則執行else裡面的語句,即使用event來引用“事件對象”。這是為了相容兩個瀏覽器而使用的if判斷方法,來使用事件對象。 domObj.onkeydown = function(e){

javascript —IPhone滑動解鎖javascript–拖動圖片時取消瀏覽器預設提示

<script type="text/javascript"> var untilEvent = { addEvent:function(oElement,oType,fun){ oElement.attachEvent?oElement.attachEvent("on"+oType,fun):oElement.addEventListener(oType,fun,false); },

總頁數: 3271 1 .... 414 415 416 417 418 .... 3271 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.