瀏覽代碼

fix anchor link for block-level elements

Evan Almloff 2 年之前
父節點
當前提交
7253eabe0a
共有 1 個文件被更改,包括 5 次插入4 次删除
  1. 5 4
      packages/interpreter/src/interpreter.js

+ 5 - 4
packages/interpreter/src/interpreter.js

@@ -357,10 +357,11 @@ class Interpreter {
 
             if (event.type === "click") {
               // todo call prevent default if it's the right type of event
-              if (shouldPreventDefault !== `onclick`) {
-                if (target.tagName === "A") {
-                  event.preventDefault();
-                  const href = target.getAttribute("href");
+              let a_element = target.closest("a");
+              if (a_element != null) {
+                event.preventDefault();
+                if (shouldPreventDefault !== `onclick` && a_element.getAttribute(`dioxus-prevent-default`) !== `onclick`) {
+                  const href = a_element.getAttribute("href");
                   if (href !== "" && href !== null && href !== undefined) {
                     window.ipc.postMessage(
                       serializeIpcMessage("browser_open", { href })