Skip to content

Commit dec5323

Browse files
committed
KillWindowlessFlash: Also tweak Flash objects which are dynamically inserted into the document.
1 parent cad9c9e commit dec5323

File tree

1 file changed

+11
-5
lines changed

1 file changed

+11
-5
lines changed

KillWindowlessFlash.user.js

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
// @author James Teh <jamie@jantrid.net>
66
// @copyright 2011-2012 James Teh
77
// @license GNU General Public License version 2.0
8-
// @version 0.20120709.01
8+
// @version 0.20120724.01
99
// @include *
1010
// ==/UserScript==
1111

@@ -17,9 +17,9 @@ function reloadFlash(elm) {
1717
elm.parentNode.replaceChild(elm.cloneNode(), elm);
1818
}
1919

20-
function killWindowlessFlash() {
20+
function killWindowlessFlash(target) {
2121
// First, deal with embed elements.
22-
var elms = document.getElementsByTagName("embed");
22+
var elms = target.getElementsByTagName("embed");
2323
for (var i = 0; i < elms.length; ++i) {
2424
var elm = elms[i];
2525
if (elm.getAttribute("type") != "application/x-shockwave-flash")
@@ -32,7 +32,7 @@ function killWindowlessFlash() {
3232
}
3333

3434
// Now, deal with object elements.
35-
var elms = document.getElementsByTagName("object");
35+
var elms = target.getElementsByTagName("object");
3636
for (var i = 0; i < elms.length; ++i) {
3737
var elm = elms[i];
3838
if (elm.getAttribute("type") != "application/x-shockwave-flash")
@@ -53,7 +53,13 @@ function killWindowlessFlash() {
5353
}
5454

5555
function onLoad(evt) {
56-
killWindowlessFlash();
56+
killWindowlessFlash(document);
5757
}
5858

5959
window.addEventListener("load", onLoad);
60+
var observer = new MutationObserver(function(mutations) {
61+
mutations.forEach(function(mutation) {
62+
killWindowlessFlash(mutation.target);
63+
});
64+
});
65+
observer.observe(document, {childList: true, subtree: true});

0 commit comments

Comments
 (0)