Archive for 四月, 2008

Codeigniter中跳转回之前访问页面

有时需要进行一些操作后,跳转回之前访问输入的地址,比如会员登陆。
那在Codeigniter中如果实现呢?
原理很简单,在第一次访问时,用$this->uri->uri_string()返回Uri信息的字符串,然后保存在名为currentUri的session,之后每次访问其他页面时,都会将之前访问的Uri重新赋值给名为previousUri的session,在需要跳转回之前的页面时,就用$this->_redirect('', true)

//Controller中的两个方法,$this->_setPreviousUri()必须在__construct()中执行
function _setPreviousUri(){
	if( $this->session->isSess('currentUri') ){
		//之前访问URL
		$this->session->setSess('previousUri', $this->session->getSess('currentUri'));
	}
	//当前访问URL
	$this->session->setSess('currentUri', $this->uri->uri_string());
	$this->currentUri = $this->session->getSess('currentUri');
	$this->previousUri = $this->session->getSess('previousUri');
}

function _redirect($uri='', $prev=false){
	if($prev) redirect($this->previousUri, 'refresh');
	else redirect($url, 'refresh');
}

在IE中使用Mootools时需要注意的一点

如果你有一个这样的表单

<form>
    <input type="text" name="username" />
    <input type="password" name="password" />
</form>

在FF中执行下面代码很正常,返回username的宽度

//FF正常,IE出错
form.elements.username.getStyle('width');

但在IE下就不行了,其他从Element扩展出来的方法也失效咯,解决的办法就是用$()函数再返回一次当前元素

$(form.elements.username).getStyle('width');

我下载了一个国人写的表单验证类,功能还不错,就是存在一些兼容问题和bug,用mootools修正重写才发现这个问题,调试了N多次才知道哪里出错,不知道这算不算mootools的bug的,居然出现了这样的兼容问题 :cry:

Javascript做的Super Mario

js-super-mario.jpg
以前也看过国人用JS做的星际争霸,NB呀。。
点击查看

Powered by WordPress | Shop Free Cellular Phones at Bestincellphones.com. | Thanks to Best CD Rates, iCellPhoneDeals.com Offers Best Cell Phone Deals. and Incinerador De Grasa