fix autocomplete for IE
authorx2001corpet <x2001corpet@839d8a87-29fc-0310-9880-83ba4fa771e5>
Sat, 31 Mar 2007 17:22:09 +0000 (17:22 +0000)
committerx2001corpet <x2001corpet@839d8a87-29fc-0310-9880-83ba4fa771e5>
Sat, 31 Mar 2007 17:22:09 +0000 (17:22 +0000)
git-svn-id: svn+ssh://murphy/home/svn/platal/trunk@1640 839d8a87-29fc-0310-9880-83ba4fa771e5

htdocs/css/base.css
htdocs/javascript/jquery.autocomplete.js
templates/search/adv.form.tpl

index c305aec..8670b1c 100644 (file)
 .ac_results ul {
     padding:0px;
     margin:0px;
+    width:100%;
 }
 
 .ac_results li {
     display:block;
     padding: 2px;
     cursor:pointer;
+    width:100%;
+}
+
+.ac_results iframe {
+               display:none;/*sorry for IE5*/
+               display/**/:block;/*sorry for IE5*/
+               position:absolute;
+               top:0;
+               left:0;
+               z-index:-1;
+               filter:mask();
+               width:3000px;
+               height:3000px;
 }
 .ac_results .over {
     background: highlight;
index 18d1fe5..a5c2236 100644 (file)
@@ -22,6 +22,7 @@ $.autocomplete = function(input, options) {
                position: "absolute",
                top: (pos.y + input.offsetHeight) + "px",
                left: pos.x + "px",
+               minWidth: $(input).width()
        });
        // Add to body element
        $(input).parent().append(results);
@@ -162,8 +163,11 @@ $.autocomplete = function(input, options) {
                                // we put a styled iframe behind the calendar so HTML SELECT elements don't show through
                                $results.append(document.createElement('iframe'));
                        }
-                       results.appendChild(dataToDom(data));
+                       var datasInDom = dataToDom(data);
+                       results.appendChild(datasInDom);
                        $results.show();
+                       // set size of ul smaller (for borders) but almost as big as div
+                       $(datasInDom).width($results.width()-2);
                } else {
                        hideResultsNow();
                }
index 6027b17..3c3eb1b 100644 (file)
 
 <h1>Recherche dans l'annuaire</h1>
 
+{javascript name="jquery"}
+{javascript name="jquery.autocomplete"}
+<script type="text/javascript">{literal}
+       // <!--
+       function launch_form(url) {
+         var f = document.getElementById('recherche');
+         f.action = url;
+         f.submit();
+       }
+       function format_autocomplete(row) {
+         if (row[1] == 1) {
+           return row[0];
+         }
+         return row[0] + ' ('+ row[1] + ')';
+       }
+       $(document).ready(function() {
+             $(".autocomplete").each(function() {
+               $(this).autocomplete("search/autocomplete/"+this.name,{selectOnly:1,formatItem:format_autocomplete,matchSubset:0,width:$(this).width()});
+             });
+       });
+       -->
+{/literal}</script>
 <form id="recherche" action="search/adv" method="get">
-  {javascript name="jquery"}
-  {javascript name="jquery.autocomplete"}
-  <script type="text/javascript">{literal}
-    function launch_form(url) {
-      var f = document.getElementById('recherche');
-      f.action = url;
-      f.submit();
-    }
-    function format_autocomplete(row) {
-      if (row[1] == 1) {
-        return row[0];
-      }
-      return row[0] + ' ('+ row[1] + ')';
-    }
-    $(document).ready(function() {
-      $(".autocomplete").each(function() {
-        $(this).autocomplete("search/autocomplete/"+this.name,{selectOnly:1,formatItem:format_autocomplete,matchSubset:0,width:$(this).width()});
-      });
-    });
-  {/literal}</script>
   <table class="bicol" cellpadding="3" summary="Recherche">
     <tr>
       <th colspan="2">