对于window.location.href,window.addEvent('domready',function())的替代方法是什么?

时间:2012-02-03 18:32:33

标签: javascript jquery dom joomla mootools

我们正在通过Joomla中的'refer'id将url页面传递给我们的管理员电子邮件...

window.addEvent('domready', function() 
{ 
  document.getElementById('refer').value=window.location.href; 
});

此代码适用于某些网站,但不适用于其他网站。虽然我愿意接受建议,但我尝试了一个运气不佳的jquery版本。未通过电子邮件返回网址的网站位于http://www.freestylelitemeter.com,而正在工作的网站位于http://www.comparediabetictestingsupplies.com。我们使用'refer'作为隐藏字段并且所有内容都匹配,因此我认为问题在于window.addEvent('domready',function(),除非存在我不知道的冲突。另一个有趣的事情是工作domain有许多脚本文件,过去发现脚本文件之间存在冲突,而较小的站点则没有。

1 个答案:

答案 0 :(得分:6)

http://www.freestylelitemeter.com/,MooTools无法加载。您在JavaScript控制台中收到此错误:

  

SCRIPT438:对象不支持属性或方法'getElement'
  mootools.js,第53行97字符

MooTools使用window扩展addEvent()。由于MooTools未加载,addEvent()失败,您的代码永远不会被执行。

你有一个错误版本的MooTools,正确的,你的问题应该得到解决。

但是,更好的是,你已经在使用jQuery了。只需将您的代码更改为:

$(function ()
{
    $('#refer').val(location.href);
});

你甚至使用MooTools吗?您可以专门切换到jQuery,并加载少一个库。