2015-05-02 11 views
5

Come disabilitare window.open() utilizzando html, javascript, jQuery ...?
Intendo bloccare qualsiasi tentativo di apertura della finestra, rendendo "non funzionante" tutte le funzioni di window.open() esistenti.
Quali sono i modi migliori per farlo? (Che lavora anche in caso di iframe)disabilita finestra aperta in javascript

+0

Non sono sicuro se è possibile. Non è possibile disabilitare completamente JS? I siti Web – Huey

+0

che disattivano le funzionalità del browser sono una piaga. se stavi ospitando il mio sito web in un iframe sul tuo sito web e disabilitassi 'window.open' dal mio codice, non lavoreremmo insieme a lungo .... – Claies

risposta

1

Sareste inquinare il namespace globale, ma si può semplicemente ignorare il metodo window.open ...

window.open = function (url, windowName, windowFeatures) { 
    console.log('not opening a window'); 
} 
+0

What for Iframes? Questo non funzionerà .. L'ho già provato ... – neoDev

+0

um ... stai dicendo che il tuo codice è isolato in un iframe? – sfletche

+0

Devo impedire window.open() anche nel caso di iframe – neoDev

3
//for iframes: 
$.each($('iframe'), function() { 
    this.contentWindow.open = function (url, windowName, windowFeatures) { 
     //iframe window.open caught! 
    }; 
}); 

//for window: 
window.open = function (url, windowName, windowFeatures) { 
    //window.open caught! 
}; 
Problemi correlati