难道是Firefox本身处理javascript的问题? ###[100分]###

DADA_dotnet 2006-10-24 08:08:30
<html>
<head>
<title></title>
<script>
function test()
{
document.write('after click.');
location.hash='123';
}
</script>
</head>
<body>
<div ="test();">click on me!</div>
</body>
</html>
期望的结果是:当点击了"click on me!"后,页面显示结果为"after click.",地址栏多了"#123".

上面的例子代码。在IE上是能很好,得到预期的结果。
但是在FF中却很奇怪。点击了"click on me!"后,页面显示还是"click on me!",地址栏有"#123"。
经调试,发现是FF里,页面执行location.hash='123'后重新加载导致结果不是预期的那样。
但是如果没有write('after click.');的话location.hash='123'是不会导致页面重新加载的。
也就是说write('after click.');会对执行location.hash='123'产生影响。


现在想解决的是,有没有什么办法,能让location.hash不使页面重新加载?
高手帮忙解决!!谢谢了。。


这里还有分!!
http://community.csdn.net/Expert/topic/5104/5104818.xml?temp=.383053
不够+++
...全文
249 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
Eilien 2006-10-27
  • 打赏
  • 举报
回复
你怎么解决的?
DADA_dotnet 2006-10-27
  • 打赏
  • 举报
回复
放弃这种方法!
cfgm 2006-10-26
  • 打赏
  • 举报
回复
那你为什么要用.hash呢?你如果是为了转到#123,方法很多阿
比如 window.location.replace('#123');


mixweb.cn
Eilien 2006-10-26
  • 打赏
  • 举报
回复
function Button1_onclick() { location.href += '#123';
}
</script>
<input id="Button1" type="button" value="button" onclick="return Button1_onclick()" />
</form>
</body>
</html>
<div>的事件可以像你那样写吗?
Eilien 2006-10-26
  • 打赏
  • 举报
回复
你的意思是什么啊,点那个按钮,在地址栏里显示#123?

<html>
<head>
<title></title>
<script>
function test()
{
document.write('after click.');
location.href += '#123';
}
</script>
</head>
<body>
<div ="test();">click on me!</div>
</body>
</html>
DADA_dotnet 2006-10-26
  • 打赏
  • 举报
回复
感谢楼上的回复,我不是要转的#123,我只是想在地址栏上显示#123.
DADA_dotnet 2006-10-26
  • 打赏
  • 举报
回复
楼上的!你不理解我的意思么?
location.hash='123'可以改变地址栏的显示,不会发生重定向.但在FF下如果先执行了document.write('ddd');的话location.hash会导致页面重定向的..
DADA_dotnet 2006-10-25
  • 打赏
  • 举报
回复
没人顶?有分也不要!@@!?

52,797

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧