diff --git a/src/NexusReader.UI.Shared/Components/Organisms/ReaderCanvas.razor b/src/NexusReader.UI.Shared/Components/Organisms/ReaderCanvas.razor index b13e133..9467195 100644 --- a/src/NexusReader.UI.Shared/Components/Organisms/ReaderCanvas.razor +++ b/src/NexusReader.UI.Shared/Components/Organisms/ReaderCanvas.razor @@ -432,8 +432,16 @@ { try { + // Ensure the JS module is loaded and the component is fully rendered before invoking interop. + if (!_isJsInitialized) + { + await InitViewportDetectionAsync(); + } var module = await EnsureViewportModuleAsync(); - await module.InvokeVoidAsync("scrollToTop", ".reader-canvas"); + if (module != null) + { + await module.InvokeVoidAsync("scrollToTop", ".reader-canvas"); + } } catch (Exception ex) {