摘要:
TempData ViewData ViewBag都可以用来保存数据,它们之间的区别如下:TempData保存在Session中,Controller每次执行请求的时候,会从Session中先获取TempData,而后清除Session,获取完TempData数据,虽然保存在内部字典对象中,但是其集合中的每个条目访问一次后就从字典表中删除。具体代码层面,TempData获取过程是通过SessionStateTempDataProvider.LoadTempData方法从ControllerContext的Session中读取数据,而后清除Session,故TempData只能跨Controll 阅读全文
摘要:
一、 起因 那天用到prototype.js于是打开看看,才看几行就满头雾水,原因是对js的面向对象不是很熟悉,于是百度+google了一把,最后终于算小有收获,写此纪念一下^_^。 prototype.js代码片段代码如下:var Class = { create: function() { return function() { this.initialize.apply(this , ... 阅读全文
摘要:
call和apply方法 call方法可改变上下文this指针,类似的方法还有apply,主要用在js对象各方法互相调用的时候,使当前this实例指针保持一致,或在特殊情况下需要改变this指针。 obj1.method1.call(obj2,argument1,argument2) 如上,call的作用就是把obj1的方法放到obj2上使用,后面的argument1…这些做为参数传入... 阅读全文
摘要:
网页可见区域宽:document.body.clientWidth 网页可见区域高:document.body.clientHeight 网页可见区域宽:document.body.offsetWidth (包括边线的宽) 网页可见区域高:document.body.offsetHeight (包括边线的宽) 网页正文全文宽:document.body.scrollWidth 网页正文全文高:do... 阅读全文
摘要:
在JavaScript中,创建一个数组可以使用 new Array,如下三种语法都是正确的:arrayObj = new Array() 创建一个数组arrayObj = new Array([size]) 创建一个数组并指定长度,注意不是上限,是长度arrayObj = new Array([element0[, element1[, ...[, elementN]]]]) 创建一个数组并赋值要... 阅读全文
摘要:
position:absolute绝对相对于父元素的位置。position:relative相对于父元素的相对位置。与absolute的区别是,relative与元素之间不可能交叉重叠。position:static静态位置。这个是个默认值。使用了这个属性,它的作用就与table差不多了。不能用left,top来定位position:fixed 相对于浏览器的位置。无论,网页的滚动条如何滚动,它都... 阅读全文
摘要:
<script language="javascript" type="text/javascript"> //获取控件对象 function $(Id) { return document.getElementById(Id) }; //为控件添加事件 function addListener(element, e, fn) { element.addEventListener ... 阅读全文
摘要:
在一些特殊应用中,我们需要获取页面上选中的文字,但是要实现这一需求,我们不得不面对那恼人的兼容问题,本文介绍了一个兼容性较好的解决方法。同时,也提供了一个在 FireFox 下获取 input 和 textarea 中选中文字的解决方案。获取选中的普通页面上的文字,可以用下面的方法:1. 2.<script type="text/javascript"> 3. 4.// 说明:获取页面... 阅读全文
摘要:
1 什么是prototype JavaScript中对象的prototype属性,可以返回对象类型原型的引用。这是一个相当拗口的解释,要理解它,先要正确理解对象类型(Type)以及原型(prototype)的概念。 前面我们说,对象的类(Class)和对象实例(Instance)之间是一种“创建”关系,因此我们把“类”看作是对象特征的模型化,而对象看... 阅读全文
摘要:
/** *工厂方法: *存在问题:重复创建对象eat */functionCreatePeople(name){ varpeople=newObject(); people.name=name; people.eat=function(){ alert(this.name+'iseating!!') }; returnpeople; } /** *构造函数法: *存在问题:重复创建对象eat *使... 阅读全文