diff --git a/src/pyj/read_book/viewport.pyj b/src/pyj/read_book/viewport.pyj index 37565fda08..696c7fd5b2 100644 --- a/src/pyj/read_book/viewport.pyj +++ b/src/pyj/read_book/viewport.pyj @@ -79,14 +79,14 @@ class ScrollViewport: # document (body) co-ordinate system doc = doc or window.document topdoc = window.document - while doc is not topdoc: + while doc is not topdoc and doc.defaultView: # We are in a frame frame = doc.defaultView.frameElement rect = frame.getBoundingClientRect() x += rect.left y += rect.top doc = frame.ownerDocument - win = doc.defaultView + win = doc.defaultView or window wx, wy = win.pageXOffset, win.pageYOffset x += wx y += wy