Я сделал простое расширение omnibox для Chrome. Идея заключается в том, что вы вводите почтовый индекс, нажмите "Enter", и он открывает несколько веб-сайтов. Но это не работает, как я хочу
function resetDefaultSuggestion() {
chrome.omnibox.setDefaultSuggestion({
description: 'Postcode: Zoek de postcode %s'
});
}
resetDefaultSuggestion();
chrome.omnibox.onInputChanged.addListener(function(text, suggest) {
// Suggestion code will end up here.
});
chrome.omnibox.onInputCancelled.addListener(function() {
resetDefaultSuggestion();
});
function navigate(url) {
chrome.tabs.query({active: true, currentWindow: true}, function(tabs) {
chrome.tabs.create({url: url});
});
}
chrome.omnibox.onInputEntered.addListener(function(text) {
navigate("http://www.gevonden.cc/postcode/" + text + "/streetname,housenr/");
navigate("http://www.nummerzoeker.com/?color=white&lastname=&str=&hnr=&pc=" + text +"&pl=&phone=&maxrows=100&sort=3&search=Zoeken");
navigate("http://www.zoekenbel.nl/postcode.asp?zoekop=p&zoek=postcode&postcode=" + text + "&Huis_nr=");
navigate("https://server.db.kvk.nl/TST-BIN/ZS/ZSWWW01@?TAAL=NL++&TYPE=PCHN&AANT=0&AWCD=" + text + "&NHVC=&HIST=+&submit=");
});
chrome.omnibox.onInputEntered.addListener(function(text) {
navigate("http://www.funda.nl/koop/zoeksuggestie/" + text + "/");
});
Все это работает нормально, последний веб-сайт (http://www.funda.nl/koop/zoeksuggestie/ + текст) не работает отлично, когда загрузка страницы завершена, нужно нажать кнопку, чтобы отобразить результаты. Когда я запускаю в консоли консоль, она работает.
document.querySelectorAll("input[type='submit']")[0].click();
Как добавить это расширение, чтобы он полностью загрузился, а затем нажал кнопку?
Заранее спасибо, LTKort
PS Это первый раз, делающий расширение и первое кодирование кода в JS?!
Использовать документ jquery
$(document).ready(function(){
// your code here
});
Код в этой функции выполняется, когда документ готов.
Чтобы убедиться, что кнопка не нажимается каждый раз после перезагрузки страницы, вы можете использовать плагин jquery cookie.
$(document).ready(function(){
if($.cookie("visited") == 'true'){
// do nothing
} else {
$.cookie("visited", true);
$("input[type='submit']").trigger("click");
}
});