summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/content/PlaceHolder.js11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/content/PlaceHolder.js b/src/content/PlaceHolder.js
index b7090ce..69db5dd 100644
--- a/src/content/PlaceHolder.js
+++ b/src/content/PlaceHolder.js
@@ -72,9 +72,14 @@ var PlaceHolder = (() => {
static listen() {
PlaceHolder.listen = () => {};
window.addEventListener("click", ev => {
- if (ev.button === 0) {
- let replacement = ev.target.closest("a.__NoScript_PlaceHolder__");
- let ph = replacement && ev.isTrusted && replacement._placeHolderObj;
+ if (ev.button === 0 && ev.isTrusted) {
+ let ph, replacement;
+ for (let e of document.elementsFromPoint(ev.clientX, ev.clientY)) {
+ if (ph = e._placeHolderObj) {
+ replacement = e;
+ break;
+ }
+ }
if (ph) {
ev.preventDefault();
ev.stopPropagation();