YUI屬性

代碼如下

<script type="text/javascript">
	YUI().use('event-custom', 'attribute', 'node', function(Y) { //應用attribute模塊
		function Connector(url) {

			(function structure() { //()()充當Connector的構造子,讓new Connector()時直接執行
				Y.augment(Connector, Y.EventTarget); 
				Y.augment(Connector, Y.Attribute); //屬性設置
				this.url = url;
			})();
			
			this.publish("evnet:testEvent");

			// 屬性配置信息,此處配置了url 、data兩個屬性
			var attris = {
				url : {
					value : ""  //單屬性值
				},
				data : {
					value : {} //對象屬性
				}
			};
			
			this.addAttrs(attris);  //給Connectort添加屬性
			
			this.accept = function() {    //set屬性
				this.set("data",{     
									protocolx:"http",
									portx:"8080",
									aptDatax:"123456"
								}
						);
				this.set("url","http://xxxxxxxxxxxxxxxxx");
				this.fire("event:testEvent", {
					target : this
				}); //發佈事件
			};
		}

		var p = new Connector("http://xxxx"); //實例化
		p.on("event:testEvent", function(e) { //監聽事件
			var obj = e.target.get("data");
			//get出屬性
			alert(e.target.get("data").protocolx+","+obj.aptDatax+","+e.target.get("url")); 
		});

		p.accept(); //調用方法,觸發事件
		
		
		p.set("url","再玩一下!")
		alert(p.get("url"));
		

	});
	
</script>


 

發佈了52 篇原創文章 · 獲贊 0 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章