2012-01-24 5 views
6

से पॉपअप विंडो पर फ़ोकस कर सकते हैं मेरे पास क्रोम एक्सटेंशन है जो window.open() करता है जब एक्सटेंशन आइकन क्लिक किया जाता है। (यह क्रोम में एक असंबंधित बग के कारण पारंपरिक क्रोम एक्सटेंशन पॉपअप का उपयोग नहीं कर सकता है)। मैं सोच रहा हूं कि पॉपअप विंडो पर ध्यान केंद्रित करने का कोई तरीका है यदि यह पहले से खुला है। क्रोम window.focus() को अक्षम करता है लेकिन मैंने सोचा कि Chrome एक्सटेंशन में ऐसा करने का कोई तरीका हो सकता है।क्या आप क्रोम एक्सटेंशन

अद्यतन: रुचि किसी के लिए इस कोड को मैं अपने पृष्ठभूमि पृष्ठ में उपयोग कर समाप्त हो गया है:

var popupId; 

// When the icon is clicked in Chrome 
chrome.browserAction.onClicked.addListener(function(tab) { 

    // If popupId is undefined then there isn't a popup currently open. 
    if (typeof popupId === "undefined") { 

    // Open the popup 
    chrome.windows.create({ 
     "url": "index.html", 
     "type": "popup", 
     "focused": true, 
     "width": 350, 
     "height": 520 
    }, function (popup) { 
     popupId = popup.id; 
    }); 

    } 
    // There's currently a popup open 
    else { 
    // Bring it to the front so the user can see it 
    chrome.windows.update(popupId, { "focused": true }); 
    } 

}); 

// When a window is closed 
chrome.windows.onRemoved.addListener(function(windowId) { 
    // If the window getting closed is the popup we created 
    if (windowId === popupId) { 
    // Set popupId to undefined so we know the popups not open 
    popupId = undefined; 
    } 
}); 

उत्तर

8
इसके बजाय window.open() का उपयोग करने का

Chromes chrome.windows.create का उपयोग .. http://code.google.com/chrome/extensions/windows.html#method-create
... फिर कॉल में वापस आप अपनी window.id रिकॉर्ड कर सकते हैं और फिर जब भी आप इसे केंद्रित करना चाहते हैं तो आप chrome.windows.update का उपयोग कर सकते हैं।

+0

चीयर्स, यह वही था जो मुझे चाहिए था। –

 संबंधित मुद्दे

  • कोई संबंधित समस्या नहीं^_^