Cheery
.:МордератоР:. | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Код: <script language="JavaScript"> function doResize() { var _doc=document.getElementById('linksframe').contentWindow.document.body.scrollHeight; document.getElementById("framediv").style.height = _doc+10; } </script> <div align="center" id="framediv"> <iframe id="linksframe" onLoad="doResize();" src="/page.htm" name="linksframe" scrolling="no" frameborder="0" width="50%" marginwidth="0" marginheight="0" allowtransparency="true" background-color="transparent"></iframe></div> | работает в IE, Mozilla.. не работает в Opera.. Код: var _doc=document.getElementById('linksframe').document.body.scrollHeight; document.getElementById("framediv").style.height = _doc+10; | работает в Opera, хреново работает в IE, не работает в Mozilla.. Код: var _doc=document.frames('linksframe').document.body.scrollHeight; document.getElementById("framediv").style.height = _doc+10; | Работает в IE, Opera, не пашет в Mozilla.. млин.. задолбался.. можно ли сделать, чтобы работало всюду без if и так далее? зы: на прозрачность не обращать внимания - знаю, что в Опере не пашет... зызы: отбой.. решение нашел тут http://www.kaali.co.uk/index.pl?art=94 Решение Код: Cross bowser iframe auto-resize script A useful script to automatically resize an iframe (height and width) to fit contents in. No scrollbars ever again!! I use this to display a DHTML site tree inside an iframe. The height of the iframe is dynamically set to contain the tree contents without displaying the vertical scrollbars. This is a cross browser script and I have tested it in IE, Netscape (Mozilla), Opera and others that I could get my friends to help me out with. To test this script create an html page, something like: <html> <head> <title>Cross bowser iframe auto-resize script</title> </head> <body> <script type="text/javascript"> function autoIframe(frameId){ try{ frame = document.getElementById(frameId); innerDoc = (frame.contentDocument) ? frame.contentDocument : frame.contentWindow.document; objToResize = (frame.style) ? frame.style : frame; objToResize.height = innerDoc.body.scrollHeight + 10; } catch(err){ window.status = err.message; } } </script> <table width="300" cellspacing="0" cellpadding="0" border="0"> <tr><td><iframe id="tree" name="tree" src="tree.htm" onload="if (window.parent && window.parent.autoIframe) {window.parent.autoIframe('tree');}"></iframe></td></tr> </table> </body> </html> Call it iframe.htm or anything else that you want. Also create an html page called tree.htm or any other page that you want to display in the iframe. Make sure that the iframe.htm and the tree.htm are in the same domain. Now point your browser to http://yourdomain/iframe.htm and see the magic yourself!! |
| Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 03:27 18-10-2004 | Исправлено: Cheery, 19:35 26-10-2004 |
|