2012-02-03 81 views
3

的替代方法我們通過Joomla中的'refer'id將URL頁面傳遞給我們的管理員電子郵件...什麼是window.addEvent('domready',function()for window.location.href?

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

這段代碼適用於某些網站,但不適用於其他網站,我試過了一個jquery版本,但運氣不好,雖然我很樂意提供建議,但沒有通過電子郵件返回url的站點是http://www.freestylelitemeter.com,而正在運行的站點是http://www.comparediabetictestingsupplies.com。我們使用'refer'作爲隱藏字段,並且所有內容都匹配,所以我相信問題與window.addEvent('domready',function(),除非我沒有意識到衝突。工作域有更多的腳本文件h正如過去發現腳本文件之間存在衝突一樣,而較小的站點則沒有。

+0

當它不起作用時會發生什麼? – 2012-02-03 18:36:20

回答

5

http://www.freestylelitemeter.com/,MooTools無法加載。你在你的JavaScript控制檯收到此錯誤:

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

MooTools的延伸windowaddEvent()。由於MooTools尚未加載,因此addEvent()失敗,您的代碼從未執行過。

你有一個錯誤版本的MooTools,正確的,你的問題應該得到解決。

但是,更好的是,您已經在使用jQuery。只需將您的代碼更改爲:

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

您甚至使用MooTools嗎?您可能只能切換到jQuery,並加載一個較少的庫。

+0

我會考慮刪除mootools,但我發現它也不適用於您的jQuery函數。這裏可能有其他事情嗎?此外,這是在少數網站上,如果我沒有錯誤CompareDiabeticTestingSupplies網站有相同的mootools.js。 – Shane 2012-02-03 19:06:37

+0

順便說一句,我更新到最新版本的mootools沒有運氣。 – Shane 2012-02-03 19:21:12

+1

@Shane - 將腳本塊移到jQuery腳本塊下面。目前jQuery在您的腳本運行後加載。通常,將所有庫腳本塊放在HTML中,確保依賴腳本出現在它們依賴的腳本之後。 – gilly3 2012-02-03 19:21:28

相關問題