码迷,mamicode.com
首页 > Web开发 > 详细

js、Extjs中函数的赋值和调用

时间:2016-05-06 12:21:26      阅读:199      评论:0      收藏:0      [点我收藏+]

标签:

//设置滚动条;
	function scrollFun(){
		Ext.getCmp('scrollItem').doLayout();
		Ext.getCmp('ScrollPanelID').doLayout();
		//设置滚动条的长度
		console.info('document.getElementById("bodyPanelID").style.height= '+document.getElementById('bodyPanelID').style.height);
		console.info('document.getElementById("bodyPanelID").offsetHeight= '+document.getElementById('bodyPanelID').offsetHeight);
		console.info('document.getElementById("bodyPanelID").clientHeight= '+document.getElementById('bodyPanelID').clientHeight);
		console.info('document.getElementById("bodyPanelID").scrollHeight= '+document.getElementById('bodyPanelID').scrollHeight);
		document.getElementById('scrollItem').style.height=(document.getElementById("bodyPanelID").clientHeight/document.getElementById("bodyPanelID").scrollHeight)*document.getElementById("ScrollPanelID").clientHeight+'px';
		//设置滚动条的高(所在位置)
		document.getElementById('scrollItem').style.top=(document.getElementById('bodyPanelID').scrollTop/document.getElementById('bodyPanelID').scrollHeight)*document.getElementById("ScrollPanelID").clientHeight+'px';
		console.info('document.getElementById("scrollItem").style.height= '+document.getElementById('scrollItem').clientHeight);
	}
	
	
	
	//画滚动条的长度和top值。
	Ext.get('win').on('click',scrollFun());



在这里面,当不点击id=‘win‘的元素时,也会调用scrollFun()这个函数。其实scrollFun()函数在页面加载时就已经执行了。当点击时id=‘win‘的元素时,反而报错了。

为什么?

原因是:

Ext.get('win').on('click',function(){});因为这句代码是重写Extjs中的click事件,我们把新的函数赋值给click事件。红色标记的地方是正确的,因为我只是声明了一个函数,然后赋值给click事件,并没有执行。在js中所有函数、变量、类对象都是var类型,所以都可以互相赋值。但是要注意,scrollFun():在函数名后加了()的就不是赋值了,而是函数执行语句。
Ext.get('win').on('click',scrollFun);对,
Ext.get('win').on('click',function(){});对
Ext.get('win').on('click',scrollFun());错


function fun(){
      alert('fun');
}
//想把函数fun赋值给a对象
var a=fun;对
var a=fun();错,这里变成了执行fun()函数了,而不是赋值。


js、Extjs中函数的赋值和调用

标签:

原文地址:http://blog.csdn.net/mastershaw/article/details/51329131

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!