html
Sep 21
--begin itlife365 jiandanjie  简单街购物平台
<a>标签的href和onclick属性区别设置小记
1、链接的onclick 事件被先执行,其次是href属性下的动作(页面跳转,或 javascript 伪链接);
2、假设链接中同时存在href 与onclick,如果想让href 属性下的动作不执行,onclick 必须得到一个false的返回值;
3、如果页面过长有滚动条,且希望通过链接的 onclick 事件执行操作。应将它的 href 属性设为 javascript:void(0);,而不要是 #,这可以防止不必要的页面跳动;
4、如果在链接的 href属性中调用一个有返回值的函数,当前页面的内容将被此函数的返回值代替;
5、在按住Shift键的情况下会有所区别。
6、今天我遇到的问题,在IE6.0里以href的形式访问不到parentNode。
7、尽量不要用javascript:协议做为A的href属性,这样不仅会导致不必要的触发window.onbeforeunload事件,在IE里面更会使gif动画图片停止播放。

在Javascript中void是一个操作符,该操作符指定要计算一个表达式但是不返回值。

void 操作符用法格式如下: 1. javascript:void (expression) 2. javascript:void expression
expression 是一个要计算的 Javascript 标准的表达式。表达式外侧的圆括号是选的,但是写上去是一个好习惯。 (实现版本 Navigator 3.0)

你以使用 void 操作符指定超级链接。表达式会被计算但是不会在当前文档处装入任何内容。

下面的代码创建了一个超级链接,当用户点击以后不会发生任何事。当用户链接时,void(0) 计算为 0,但 Javascript 上没有任何效果。
<A xhref="javascript:void(0)">单此处什么也不会发生</A>
下面的代码创建了一个超级链接,用户单击时会提交表单。

<A xhref="javascript:void(document.form.submit())"> 
单此处提交表单</A>

下面代码则执行了subgo()函数,
<a xhref="javascript:void(0)" onclick="subgo()">点我</a>
在这里,javascript:void(0),没启实质上的作用,它仅仅是一个死链接,执行的函数是subgo()。
<a xhref="http://itlife365.com/blog/admin.php#" onclick="subgo()">点我</a>与<a xhref="javascript:void(0)" onclick="subgo()">点我</a>区别。
实际上 #包含了一个位置信息默认的锚是#top 也就是网页的上端 ,而javascript:void(0) 仅仅表示一个死链接,没有任何信息。所以调用脚本的时候最好用void(0)
href一般是指向一个URL地址,也可以调用javascript ,如href="javascript:xxx();",文档中推荐这样写:<a xhref=" javascript:void(0)" onclick="xxx();">xx</a>,但是这种方法在复杂环境有时会产生奇怪的问题,尽量不要用javascript:协议做为A的href属性,这样不仅会导致不必要的触发window.onbeforeunload事件,在IE里面更会使gif动画图片停止播放。

链接的 onclick 事件被先执行,其次是 href 属性下的动作(页面跳转,或 javascript 伪链接),如果不想让href 属性下的动作执行,onclick 需要要返回 false ,一般是这样写onclick="xxx();return false;"

--end itlife365 jiandanjie  简单街购物平台
Tags: , , ,
Sep 21
--begin itlife365 jiandanjie
很多项目都用到javascript的返回功能,但是区别呢?
javascript返回back和go的区别
history.back(-1):直接返回当前页的上一页,数据全部消息,是个新页面
history.go(-1):也是返回当前页的上一页,不过表单里的数据全部还在
--end itlife365 jiandanjie
Tags: , , ,
Mar 12
url请求地址后加随机数防止浏览器缓存
url请求地址后加随机参数,比如XXXX?t= + new Date().getTime()。
或者code_num.php?' + Math.random()
原因是防止浏览器缓存。浏览器为了提高用户访问同一页面的速度,会对页面数据进行缓存。
当url请求地址不变时,有时候会导致浏览器不发送请求,直接从缓存中读取之前的数据。
如果数据改变了,而没加随机数,读取的数据会跟之前一样。
加上随机数,就是欺骗浏览器url改变了,会每次都向服务器发送请求而不去读缓存。
Jan 11

浏览器升级为ie8后编辑器eWebeditor无法使用的解决办法

之前开发的网站,网页编辑器很多都是使用ewebeditor.人算不如天算。现在浏览器经常升级,原来网站在ie6/ie7 可以正常使用的功能,升级

到8.0竟然出现点击ewebeditor在线编辑器按钮无法弹出编辑框的问题,即所有按钮都失效了,怎么办呢?
原来由于ewebeditor里面使用了函数anonymous()函数,浏览器升级成ie8.0后因为anonymous()函数在ie8.0中不能使用,ie8.0中只能用

onclick(event),而其他8.0以下的只能用anonymous(),所以这里要使用javascript的try函数,对客户端ie用8.0代码进行试运行。如果出错

,再尝试8.0以下的代码进行处理,或者让网页在指定的ie模式下运行,比如指定为IE6 或者IE7 。

方法一 、在页面头部中中加入这一句即可

<meta http-equiv="x-ua-compatible" content="ie=7" />
或者
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />

上面的两个写法的效果都是一样的,只是写法稍有不同

方法二、通过修改editor.js文件(注意,新手修改前记得备份editor.js文件哟)
在eWebEditor的目录里找到Editor.js文件,一般路径是webedit\Include\Editor.js(版本不同路径也不一定相同,新版本中

webedit/js/editor.js),在其中找到如下代码:

if (element.YUSERONCLICK) {
eval(element.YUSERONCLICK + "anonymous()");
}

或者

if (element.YUSERONCLICK) eval(element.YUSERONCLICK + "anonymous()");
版本不同可能写法有点区别
将上面的代码替换为

if (element.YUSERONCLICK)
{
try
{
eval(element.YUSERONCLICK + "onclick(event)");
}
catch (e){
eval(element.YUSERONCLICK + "anonymous()");
}
}
再保存,然后就可以了。
如果出错,再尝试8.0以下的代码进行处理。

我是放在ASP.NET中使用的,例:

<input type="hidden" id="content"  value=""  runat="server">
<iframe id="eWebEditor1" src="eWebEditor/ewebeditor.htm?id=content&style=coolblue" frameborder="0"  scrolling="no"

width="720" height="350">

</iframe>
注:input中的id名字要和iframe中src="eWebEditor/ewebeditor.htm?id=content这里的id名字要相同

Jun 19

你是否有过在网站上留了联系方式,比如邮箱,但让广告者 找到你的邮件地址,群发垃圾邮件呢?
现在又办法避免了,腾讯推出了 邮我组件 ,轻松避免还可选图片哦。
优点如下:
“邮我”组件可以生成一张图片,让您放到网站、论坛上,别人一键点击图片就可以很方便地发邮件给您。

•网友可简单快捷发邮件给你
•避免邮箱信息泄漏
•避免被“网络爬虫”自动收集来发垃圾邮件
具体如下:
1、访问地址 http://m172.mail.qq.com/cgi-bin/frame_html?sid=IlPuDjRT9McnLz1y&url=%2Fcgi-bin%2Fqm_help_mailme%3Ft%3Dqm_help_mailme&r=3bd11e1a80b84cb89052fcb7db2024de

分页: 1/2 第一页 1 2 下页 最后页