fix: navigate without reloading for links with a target attribute that will display in the current browsing context#13165
fix: navigate without reloading for links with a target attribute that will display in the current browsing context#13165
target attribute that will display in the current browsing context#13165Conversation
🦋 Changeset detectedLatest commit: f609331 The changes in this PR will be included in the next version bump. This PR includes changesets to release 1 package
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
target attribute and open in the current browsing contexttarget attribute and will display in the current browsing context
target attribute and will display in the current browsing contexttarget attribute that will display in the current browsing context
|
preview: https://svelte-dev-git-preview-kit-13165-svelte.vercel.app/ this is an automated message |
| const external = | ||
| !url || | ||
| !!target || | ||
| target === '_blank' || |
There was a problem hiding this comment.
should it be this instead? We can't know for certain if the browsing context will be the same as ours for _top etc
| target === '_blank' || | |
| (target || '_self') !== '_self' || |
There was a problem hiding this comment.
Would location.ancestorOrigins work to check if there are no parents/ancestors? https://developer.mozilla.org/en-US/docs/Web/API/Location/ancestorOrigins
If there is a way to check for parent browsing contexts then the page wouldn't need to reload when these values should behave similar to _self.
_parent: The parent browsing context of the current one. If no parent, behaves as _self.
_top: The topmost browsing context. To be specific, this means the "highest" context that's an ancestor of the current one. If no ancestors, behaves as _self.
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#target
|
Using |
Co-authored-by: Simon H <5968653+dummdidumm@users.noreply.github.com>
fixes #13162
This PR corrects the
externallink condition by also checking thetargettype instead of just the presence of thetargetattribute. Now links that open in the same browsing context won't be treated as external.Please don't delete this checklist! Before submitting the PR, please make sure you do the following:
Tests
pnpm testand lint the project withpnpm lintandpnpm checkChangesets
pnpm changesetand following the prompts. Changesets that add features should beminorand those that fix bugs should bepatch. Please prefix changeset messages withfeat:,fix:, orchore:.Edits