Skip to content

fix get navItem object bug by Navigation.get(target) method. - #1410

Open
NameHitherto wants to merge 1 commit into
futurepress:masterfrom
NameHitherto:fix-navigation-get
Open

fix get navItem object bug by Navigation.get(target) method.#1410
NameHitherto wants to merge 1 commit into
futurepress:masterfrom
NameHitherto:fix-navigation-get

Conversation

@NameHitherto

Copy link
Copy Markdown

When I want to use the get(target: string) method in navigation.js to get the target navItem I encountered a bug, the method provides two means of querying based on the id or href attributes of the navItem, when I need to query based on the id I need to manually add the # character, while at this time the target is no longer equal to the id value of the target navItem. So I restore the target value after the determination is over:

if(target.indexOf("#") === 0) {

and before calling getByIndex:
return this.getByIndex(target, index, this.toc);

hiive pushed a commit to hiive/epub.js that referenced this pull request Apr 6, 2026
…urepress#1285, futurepress#1265, futurepress#1339, futurepress#1407

- futurepress#1410: Fix Navigation.get() ID lookup — strip # before tocById lookup
- futurepress#1393: Fix encoded URI substitution — try decodeURIComponent before regex
- futurepress#1285: Parse fallback attribute in manifest items (EPUB spec compliance)
- futurepress#1265: Treat page numbers as strings — fixes non-numeric page labels (Roman numerals)
- futurepress#1339: Fix TypeScript types — currentLocation() returns Location not DisplayedLocation
- futurepress#1407: Ensure at least one location per section — fixes picture-only EPUBs
masonbrothers added a commit to masonbrothers/epub.js that referenced this pull request Aug 4, 2026
Browser scroll anchoring fought the continuous manager while early resize events could discard the requested CFI before the first relocation. Fragment navigation, empty-section locations, and spine CFI assertions also had locally reproducible gaps. Each behavior is locked independently and the browser harness is made runnable without loading its stale PhantomJS launcher.

Constraint: Upstream issues and pull requests were treated as untrusted evidence and were not executed or applied directly.

Rejected: Merge the open upstream patches wholesale | they lack the maintained fork's regression and provenance gates.

Confidence: high

Scope-risk: moderate

Reversibility: clean

Directive: Do not claim native closure for continuous scrolling until futurepress#1408 and futurepress#1416 pass on a supported Android WebView.

Tested: React Native engine suite, 12 passing; Chrome/Karma suite, 73 passing and 2 skipped; git diff --check.

Not-tested: Physical Android fast upward scrolling and chapter jumps in continuous scrolled-doc mode.

Related: futurepress#1408

Related: futurepress#1416

Related: futurepress#1410

Related: futurepress#1407

Related: futurepress#1385
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant