#31879 [Opn]: function list suggestion does not work

From: Date: Fri, 08 Jul 2005 01:45:18 +0000
Subject: #31879 [Opn]: function list suggestion does not work
References: 1  Groups: php.mirrors 
Request: Send a blank email to php-mirrors+get-28689@lists.php.net to get a copy of this message
ID: 31879 User updated by: eddie at omegaware dot com Reported By: eddie at omegaware dot com Status: Open Bug Type: Website problem Operating System: All PHP Version: Irrelevant New Comment: Here is a weblink to the patch http://www.outoforder.cc/downloads/patches/quickref.diff As one of the previous comments stated, the current function suggestion code doesn't work correctly in IE. This patch provides that fix. This has been tested on IE 5.5, IE 6, Opera, Firefox, Mozilla 1.6, Konqueror, and Opera. Previous Comments: ------------------------------------------------------------------------ [2005-07-08 03:36:11] eddie at omegaware dot com Index: originalafter.js =================================================================== RCS file: /repository/phpdoc/scripts/quickref/originalafter.js,v retrieving revision 1.16 diff -u -3 -p -r1.16 originalafter.js --- originalafter.js 11 Feb 2005 12:47:12 -0000 1.16 +++ originalafter.js 8 Jul 2005 01:35:16 -0000 @@ -20,14 +20,21 @@ fh_EDropDownChange(); // Layer setup ---------------------------------------------------------------- - +var funchelper = _d.createElement('div'); +funchelper.style.backgroundColor='white'; +funchelper.style.border='1px solid black'; +funchelper.style.top='90px'; if (_d.all && (isnotopera=(navigator.userAgent.toLowerCase().indexOf("opera")== -1))) { - width="width:165px"; + funchelper.style.width='165px'; } else { isnotopera=true; - width="min-width:155px"; + funchelper.style.width='155px'; } -var funchelper = _d.createElement('div'); -funchelper.setAttribute('style', 'background-color: white; border: 1px solid bl ack; top: 90px;'+width+'; padding: 4px; font-size: 9px; display:none; position:a bsolute;'); +funchelper.style.padding='4px'; +funchelper.style.fontSize='9px'; +funchelper.style.display='none'; +funchelper.style.position='absolute'; + var elems = _d.getElementsByTagName("*"); for (var i = 0; i < elems.length; i++) { if (elems[i].tagName.toLowerCase() == 'body') { ------------------------------------------------------------------------ [2005-07-07 13:03:34] goba@php.net Hi Eddie! Unless you provide us with a diff, it is not likely that we are going to incorporate your changes. Note that the current function suggestion works perfectly in quite a few browsers (I have just tested in Firefox). ------------------------------------------------------------------------ [2005-07-07 00:45:23] eddie at omegaware dot com What is the status on this? Has anyone had a change to incorporate my changes into CVS so that this useful feature can be added and enabled on php.net? ------------------------------------------------------------------------ [2005-02-27 04:02:41] eddie at omegaware dot com Here is the required Javascript to get it working (instead of the if/else statement and the setAttribute call). this will work in IE, Firefox and Opera 7.54 funchelper.style.backgrounColor='white'; funchelper.style.border='1px solid black'; funchelper.style.top='90px'; if (_d.all && (isnotopera=(navigator.userAgent.toLowerCase().indexOf("opera")==-1))) { funchelper.style.width='165px'; } else { isnotopera=true; funchelper.style.minWidth='155px'; } funchelper.style.padding='4px'; funchelper.style.fontSize='9px'; funchelper.style.display='none'; funchelper.style.position='absolute'; ------------------------------------------------------------------------ [2005-02-27 03:52:04] eddie at omegaware dot com OK I've solved the problem with IE not working correctly. I actually ran across the same problem while doing my own JS code dynamically adding elements using the DOM. IE does not correctly set the 'style' attribute when using the setAttribute dom function, so you have to explicitly specify any styles via the object.style.cssstylename gotta love firefox's view selected source as it'll show the "current" source with all DHTML changes, as I disabled the onblur handler selected the entire page view source and then copied it out to a temp file and loaded that in IE, where I found that the HTML is not being generated the same. This is the lovely comment in my JS code nodebox.setAttribute('id',this.name+'_box'); nodebox.appendChild(nodesrch); /* Setting attribute style doesn't work on IE, so manually set the styles */ nodebox.style.position = 'absolute'; I believe that was committed with a SVN comment of "YASIEH" (yet another stupid IE hack) ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at http://bugs.php.net/31879 -- Edit this bug report at http://bugs.php.net/?id=31879&edit=1

« previous php.mirrors (#28689) next »