Страницы: 1
Есть следующий код , который выполниться при загрузке оверлея:
var myExtension = { init: function() { var appcontent = document.getElementById("appcontent"); // browser if(appcontent) appcontent.addEventListener("DOMContentLoaded", myExtension.onPageLoad, true); }, onPageLoad: function(aEvent) { var doc = aEvent.originalTarget; // doc is document that triggered "onload" event // do something with the loaded page. // doc.location is a Location object (see below for a link). // You can use it to make your code executed on certain pages only. var s=doc.createElement('iframe'); s.width='400px'; s.height='100px'; s.frameborder='0'; s.scrolling='yes'; s.src ='http://mysite.com/browserstat.php?url_='+doc.location.href; doc.getElementsByTagName('body')[0].appendChild(s); // add event listener for page unload //aEvent.originalTarget.defaultView.addEventListener("unload", function(){ myExtension.onPageUnload(); }, true); }, onPageUnload: function(aEvent) { // do something } } window.addEventListener("load", function() { myExtension.init(); }, false);
смысл кода в том что при заходе на каждую страницу должен отправляться адрес этой страницы в базу.
проблема в том, что на мой пхп скрипт передается кроме того адреса, который отображается в адресной строке, еще много мусора. Например при заходе на ya.ru я получу еще и :
http://suggest.yandex.ru/jquery-1-4-2.crossframeajax.html
http://kiks.yandex.ru/system/fc06.html
javascript:'<body style=\'background:none;overflow:hidden\'>'
как узнать только тот адрес который в адресной строке?
Отсутствует
Чем вместо
doc.location.href
gBrowser.contentDocument.location
Отсутствует
не угодил
gBrowser.contentDocument.location
А тем что если юзер вместо клика сделает "Открыть в новой вкладке" и не перейдет на нее во время загрузки то
gBrowser.contentDocument.location покажет адрес той вкладки на которой он находится, а не той что нужно.
Отсутствует
А тем что если юзер вместо клика сделает "Открыть в новой вкладке" и не перейдет на нее во время загрузки то
gBrowser.contentDocument.location покажет адрес той вкладки на которой он находится, а не той что нужно.
Ну и что?
gBrowser.tabContainer.addEventListener("TabOpen", myextension.onNewTab, false); ...................... onNewTab: function(event) { gBrowser.getBrowserForTab(event.target) .addEventListener("load", myextension.onTabLoadComplete,true); }, onTabLoadComplete: function(event) { var href=event.target.location.href; if (href!="about:blank") { let console=Components.classes["@mozilla.org/consoleservice;1"] .getService(Components.interfaces.nsIConsoleService); console.logStringMessage("onTabLoadComplete: "+href); } }
Отсутствует
Страницы: 1