diff --git a/packages/next/client/link.tsx b/packages/next/client/link.tsx
index 13ca9d9844422..2aba7f79139d8 100644
--- a/packages/next/client/link.tsx
+++ b/packages/next/client/link.tsx
@@ -86,7 +86,10 @@ function linkClicked(
): void {
const { nodeName } = e.currentTarget
- if (nodeName === 'A' && (isModifiedEvent(e) || !isLocalURL(href))) {
+ // anchors inside an svg have a lowercase nodeName
+ const isAnchorNodeName = nodeName.toUpperCase() === 'A'
+
+ if (isAnchorNodeName && (isModifiedEvent(e) || !isLocalURL(href))) {
// ignore click for browser’s default behavior
return
}
diff --git a/test/integration/client-navigation/pages/nav/index.js b/test/integration/client-navigation/pages/nav/index.js
index 7326eaf577e0a..bf4abf1646acf 100644
--- a/test/integration/client-navigation/pages/nav/index.js
+++ b/test/integration/client-navigation/pages/nav/index.js
@@ -78,14 +78,33 @@ export default class extends Component {
- A element with onClick
+ An element with onClick
- A element with target
+ An element with target
+
+
+