Balage74 2009. márc. 28. 02:51 | válasz | #183
Sziasztok, szereztem egy faintos kis kódot ami lebegõ ablakban jelenít meg egy szöveget, egyetlen hibája, hogy alapesetben nem középen jeleníti meg az ablakot, amit ugyan firefox alatt megoldottam de sajna ie alatt nem akar mûködni. Sajna javascripthez nem nagyon értek, csak a php tudásom alapján írtam át a scriptet ami a következõ: <script type="text/javascript"> var w_ww= window.innerWidth; var w_wh= window.innerHeight; var target_x =w_ww/2-75; var target_y =w_wh/2-75; var has_inner = typeof(window.innerWidth) == 'number'; var has_element = document.documentElement && document.documentElement.clientWidth; var fm_id='floatdiv'; var floating_menu = document.getElementById ? document.getElementById(fm_id) : document.all ? document.all[fm_id] : document.layers[fm_id]; var fm_shift_x, fm_shift_y, fm_next_x, fm_next_y; function move_menu() { if (document.layers) { floating_menu.left = fm_next_x; floating_menu.top = fm_next_y; } else { floating_menu.style.left = fm_next_x + 'px'; floating_menu.style.top = fm_next_y + 'px'; } } function compute_shifts() { fm_shift_x = has_inner ? pageXOffset : has_element ? document.documentElement.scrollLeft : document.body.scrollLeft; if (target_x < 0) fm_shift_x += has_inner ? window.innerWidth : has_element ? document.documentElement.clientWidth : document.body.clientWidth; fm_shift_y = has_inner ? pageYOffset : has_element ? document.documentElement.scrollTop : document.body.scrollTop; if (target_y < 0) fm_shift_y += has_inner ? window.innerHeight : has_element ? document.documentElement.clientHeight : document.body.clientHeight; } function float_menu() { var step_x, step_y; compute_shifts(); step_x = (fm_shift_x + target_x - fm_next_x) * .07; if (Math.abs(step_x) < .5) step_x = fm_shift_x + target_x - fm_next_x; step_y = (fm_shift_y + target_y - fm_next_y) * .07; if (Math.abs(step_y) < .5) step_y = fm_shift_y + target_y - fm_next_y; if (Math.abs(step_x) > 0 || Math.abs(step_y) > 0) { fm_next_x += step_x; fm_next_y += step_y; move_menu(); } setTimeout('float_menu()', 20); }; compute_shifts(); if (document.layers) { // Netscape 4 cannot perform init move // when the page loads. fm_next_x = 0; fm_next_y = 0; } else { fm_next_x = fm_shift_x + target_x; fm_next_y = fm_shift_y + target_y; move_menu(); } float_menu(); </script> Remélem van itt olyan ember akinek ez a kisujjában van és tud segíteni, nagyon megköszönném. igaz, hogy van valamelyik javascript gyûjteményben is hasonló kód ami mûködik is mindegyik böngészõvel, de én ezt szeretném használni.