I was able to click all patients with no crash on the iPhone. I'm running 1.1.3. Chris.
On Feb 7, 2008 1:47 PM, Steve Finkelstein <[EMAIL PROTECTED]> wrote: > > If anyone wishes to try to replicate the crash, you can visit a demo > of the site on http://iphone2.limemedical.com. > > If you click on Patient List via the landing page, click on the first > 7+ patients (obviously they aren't real people) > > Your browser should and will crash (on the iPhone, won't on the desktop) > > There's nothing odd about my code that I can find. I'm having an > extremely difficult time finding what's the cause of it because of > lack of debugging tools on the iPhone. > > On 2/6/08, Steve Finkelstein <[EMAIL PROTECTED]> wrote: > > Hey folks, > > > > I've been able to replicate a consistent crash with Mobile Safari > > using 1.1.3 firmware. I'm using the cookie class written by David > > Flanagan in his highly accredited JavaScript: The Definitive Guide, > > code can be found here: > > > > > http://www.davidflanagan.com/javascript5/display.php?n=19-2&f=19/Cookie.js > > > > I believe the code I've appended at the bottom of this email is the > > culprit. I basically keep track of visited IDs of an <li> element in a > > cookie. In a nutshell for those who don't feel like reading the code, > > I create a cookie and set its expiration to 24 hours. In it, I have a > > cookie named visited_data with a value of something like > > > > visited_data=visited:1|2|3|4 > > > > where 1,2,3,4 are the visited IDs. I have code which can arbitrarily > > remove ids and add ids. However, on the iPhone .. and iPhone only > > (cannot replicate on Safari3/Webkit).. if I click enough <li> > > elements, about 6+, it crashes the browser. > > > > Does anyone have any idea what could be causing it? Is the value of > > the cookie data limited in an iPhone? Is there a more elegant approach > > to my solution for storing visited status on multiple elements, say > > 100+ ? > > > > Using binary bitmasks has crossed my mind.. but I'm quite reluctant at > > the moment in that approach because of readability by other > > developers. > > > > Thanks all. > > > > /sf > > > > code: > > > > function _check_status(obj) { > > > > var evt = window.event; > > var el = evt.srcElement; > > > > if (el.tagName == "SELECT") return; > > > > var pid = el.lastChild.id || el.parentNode.lastChild.id; > > > > // Check if patient has been visited > > var cookie = new Cookie("visited_data"); > > > > // Check if patient has been visited. > > if(cookie.visited) { > > // check if particular id has been visited. > > > > if(!cookie.check(pid)) { > > cookie.visited += "|" + pid; > > cookie.store(1); > > obj.className += " visited"; > > > > } else { > > var values = cookie.visited.split("|"); > > delete cookie.visited; > > cookie.visited = ''; > > > > for(var i=0; i < values.length; i++) { > > if (values[i] == pid) > > continue; > > else cookie.visited += "|" + values[i] ; > > } > > cookie.visited = > cookie.visited.substring(1); > > > > cookie.store(1); > > obj.className = "patients"; > > } > > > > } else { > > cookie.visited = pid; > > cookie.store(1); > > // User has NOT been visited, enable their > visited status. > > obj.className += " visited"; > > } > > > > } > > > > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "iPhoneWebDev" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/iphonewebdev?hl=en -~----------~----~----~----~------~----~------~--~---
