[Webkit-unassigned] [Bug 6309] New: Bookmarking/Back Button Support for AJAX/DHTML Applications in Safari is Impossible

bugzilla-daemon at opendarwin.org bugzilla-daemon at opendarwin.org
Sat Dec 31 02:46:40 PST 2005


http://bugzilla.opendarwin.org/show_bug.cgi?id=6309

           Summary: Bookmarking/Back Button Support for AJAX/DHTML
                    Applications in Safari is Impossible
           Product: WebKit
           Version: 412+
          Platform: PC
        OS/Version: Mac OS X 10.2
            Status: UNCONFIRMED
          Severity: major
          Priority: P2
         Component: JavaScript
        AssignedTo: webkit-unassigned at opendarwin.org
        ReportedBy: bkn3 at columbia.edu


I'm the designer of the Really Simple History library, an open source framework
that makes it possible to support bookmarking and the back/forward buttons in
AJAX/DHTML applications (for an intro to the framework see an O'Reilly Net
article at
http://www.onjava.com/pub/a/onjava/2005/10/26/ajax-handling-bookmarks-and-back-button.html).
This framework is being integrated into the Dojo project
(http://dojotoolkit.org), a popular library for AJAX/DHTML applications, and was
recently brought into Google for their own applications.

Unfortunately, RSH does not support Safari/WebKit, primarily because it is
impossible to do so; RSH works on Firefox and IE. I spent about two weeks full
time attempting to explore work arounds for Safari, but it turns out to be
impossible for a number of reasons I blogged about here:
http://codinginparadise.org/weblog/2005/09/safari-no-dhtml-history-possible.html

The RSH home page: http://codinginparadise.org/projects/dhtml_history/README.html

Here is what Safari/WebKit _should_ do:
1) If JavaScript updates the location of the web page to an anchor:
window.location.href = "#some_new_location"

The URL location toolbar _should_ update with the new location (and the browser
throbber should stop spinning; it currently goes into a continious loop in some
conditions). In addition, every time JavaScript updates the location, this entry
should be placed into the browser's history, so that it affects the back and
forward buttons, just like Firefox. In addition, if I create a timer to check
the location of the page:

var checkLocation = function(){
  var newLoc = document.location.href;
  // do something with the hash location
};
window.setInterval(checkLocation, 200);

It _should_ always be able to see the _current_ location of the document,
including the new hash value, and _should_ return the hash value as well
(sometimes you don't get the hash value).

The ability to do bookmarking and back button support is very important to the
kind of large scale AJAX/DHTML apps that are appearing, such as the new AJAX
Yahoo Mail, the new Google RSS Reader, and others. Just as a side note, I should
let you know that more and more AJAX/DHTML developers are abandoning Safari as a
platform for these advanced apps, which does not bode well for Safari. In
addition, many of the ones doing this are the ones creating the frameworks and
libraries that others will use, which will lock Safari/WebKit even more out of
some of the really cool things that are going on on the web right now.

Feel free to contact me at bkn3 at columbia.edu if you have any questions; many
people I know really want to see this bug fixed.

-- 
Configure bugmail: http://bugzilla.opendarwin.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.



More information about the webkit-unassigned mailing list