आप हाँ और कोई बटन के साथ इस का उपयोग करते हुए webRequest
सुविधा, तो पृष्ठभूमि पृष्ठ, और कस्टम पेज कर सकते हैं। उदाहरण के लिए, पृष्ठभूमि पृष्ठ में कुछ इसी तरह लिखें:
var URLStorage;
function interceptRequest(request)
{
if(request && request.url)
{
if(request.type == "main_frame") // new page/site is loading in main window
{
if(request.url.indexOf("wikipedia.org") > -1)
{
URLStorage = request.url;
return {redirectUrl: chrome.extension.getURL("confirmation.html")};
}
}
}
}
chrome.webRequest.onBeforeRequest.addListener(interceptRequest, {urls: ["*://*/*"]}, ['blocking']);
यह उदाहरण सख्ती से जांच नहीं की जाती है, तो विकिपीडिया डोमेन में बताया गया है, लेकिन मैं स्पष्टता के लिए ऐसा किया। मेरे वास्तविक कोड में एक विशेष वर्ग 'यूआरएल' का प्रयोग किया जाता है, जो पारसी यूआरएल पास करते हैं और इसके प्रत्येक भाग के लिए गुण प्रदान करते हैं, इसलिए उन्हें चुनिंदा जांच की जा सकती है।
confirmation.html
में बस 2 बटन रखें, और उन्हें उचित कोड पर बाध्य करें, उदाहरण के लिए अनुरोधित साइट पर रीडायरेक्ट करना, यदि उपयोगकर्ता ने "हाँ" का उत्तर दिया है।
$('#okbutton').click(function()
{
document.location.href = chrome.extension.getBackgroundPage().URLStorage;
});
भूलना अपने प्रकट की permissions
अनुभाग में "webRequest" और "webRequestBlocking" का उल्लेख न करें।
आपके मिलान पैटर्न में से कोई भी वैध नहीं है। [दस्तावेज़ीकरण] पढ़ें (http://developer.chrome.com/extensions/match_patterns.html)। मैं 'run_at" का उपयोग करने का सुझाव देता हूं: "document_start" 'ताकि पृष्ठ प्रस्तुत करने से पहले पुनर्निर्देशन हो। –