CSDN的隐藏侧边栏功能是怎么实现的?_html/css_WEB-ITnose
比如这个页面的“隐藏侧边栏”
http://bbs.csdn.net/
给个源码看看
回复讨论(解决方案)
其实就是设置 css,显示style.display='block',隐藏style.display='node'
我写了个例子,与csdn的实现方式可能不一样
<style> html,body{ width:100%;height:100%;padding:0px;margin:0px;overflow:hidden } #ifr1{height:100%;width:200px;float:left; } #ifr2{height:100%;width:100px float:right; } #hand{ position: absolute; z-index: 99; left: 200px; top: 48%; height: 50px; word-break: break-all; display: block; width: 20px; background: #fff; text-align: center; border: 1px solid #ccf; } </style> <iframe id="ifr1" src="http://bbs.csdn.net/left_menu"></iframe> <iframe id="ifr2" src="http://bbs.csdn.net/home"></iframe> <div id="hand" >隐藏</div> <script> function $(id){return document.getElementById(id) } var w,hand=$('hand'),ifr1=$('ifr1'),ifr2=$('ifr2'); hand.onclick=function(){ //点击隐藏按钮 var sty=ifr1.style,disp; sty.display=sty.display=='none'?'block':'none'; doResize(); } function doResize(){ //调整位置大小 var w=document.body.clientWidth; var sty=ifr1.style,disp; if(sty.display=='none'){ ifr2.style.width='100%'; hand.style.left='1px'; }else{ ifr2.style.width=w-220+'px'; hand.style.left='200px'; } } window.onload=window.onresize=doResize; doResize() </script>
csdn用的是frameset,设置其中framset的cols属性为0,*收缩导航,设置为230,*展开导航
我这样写为什么“隐藏”按钮不显示?
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>左右布局侧边栏演示</title> <link href="http://csdnimg.cn/www/images/favicon.ico" rel="SHORTCUT ICON"><style> //html,body{ width:100%;height:100%;padding:0px;margin:0px;overflow:hidden } //#ifr1{height:100%;width:200px;float:left; } //#ifr2{height:100%;width:100px float:right; } #hand{ position: absolute; // 绝对定位 z-index: 10001; // 优先级最高(离用户最近) left: 200px; top: 48%; height: 50px; word-break: break-all; display: block; width: 20px; //background: #fff; text-align: center; border: 1px solid #ccf; } </style> </head> <frameset cols="230,*" frameborder="no" border="0" framespacing="0"> <frame src="左右框架窗体1.html" name="leftFrame" noresize="noresize" id="ifr1" title="leftFrame" /> <frame src="左右框架窗体1.html" name="mainFrame" id="ifr2" title="mainFrame" /> </frameset> <noframes> <div id="hand" >隐藏</div><script> function $(id){ return document.getElementById(id) } var w,hand=$('hand'),ifr1=$('ifr1'),ifr2=$('ifr2'); hand.onclick=function(){ //点击隐藏按钮 var sty=ifr1.style,disp; sty.display=sty.display=='none'?'block':'none'; doResize(); } function doResize(){ //调整位置大小 var w=document.body.clientWidth; var sty=ifr1.style,disp; if(sty.display=='none'){ ifr2.style.width='100%'; hand.style.left='1px'; }else{ ifr2.style.width=w-220+'px'; hand.style.left='200px'; } } window.onload=window.onresize=doResize; doResize() </script> <body> </body> </noframes></html>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>CSDN论坛首页 - CSDN.NET</title> <script src="/assets/application-1a33bfd3d5ee7e433197442aeb9c03b6.js" type="text/javascript"></script> <script type="text/javascript"> $(function() { main_page_js.index_page(); }); </script> <link href="http://csdnimg.cn/www/images/favicon.ico" rel="SHORTCUT ICON"> </head> <frameset cols="230,*" frameborder="no" border="0" framespacing="0"> <frame src="/left_menu" name="leftFrame" noresize="noresize" id="leftFrame" title="leftFrame" /> <frame src="/home" name="mainFrame" id="mainFrame" title="mainFrame" /> </frameset> <noframes> <body> </body> </noframes></html>
我研究了各位老大的方法,结果死活只在IE里才好用,其它的遨游、谷歌之类的点击了都没有反应,代码如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>左右布局侧边栏演示</title> </head><frameset rows="*" name="top_function" id="top_function" frameborder="NO" border="0" framespacing="0"> <frameset cols="20%,20,*" name="left_function" id="left_function" frameborder="NO" border="0" framespacing="0"> <frame src="left.html" name="leftFrame" id="leftFrame" title="leftFrame" /><frame src="left_close.html" name="left_close" id="left_close" scrolling="NO" noresize="noresize" title="left_close" style="border-color:#FF0000; border-style:solid; border-width:1px; padding-right:2" /> <frame src="right.html" name="mainFrame" id="mainFrame" title="mainFrame" /> </frameset></frameset> <noframes> <body><p>此网页使用了框架,但您的浏览器不支持框架。</p> </body> </noframes></html>
left_close.html文件在这里,和上面的放在一个目录里:
<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>关闭和显示侧边栏</title><SCRIPT LANGUAGE="javascript"><!--function shleft(){ if (parent.left_function.cols!="20%,20,*"){ parent.left_function.cols="20%,20,*" } else{ parent.left_function.cols="0,20,*" }}//--></SCRIPT></head><body onclick="shleft();"></body></html>
各位老大帮忙看看吧!拜托了!
这个也没有效果:
if (parent.document.getElementById('top_function').rows!='10%,20,*'){ parent.document.getElementById('top_function').rows='10%,20,*' }else{ parent.document.getElementById('top_function').rows='0,20,*' }
、脚本写最简单吧,。。。

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Der Artikel erörtert den HTML & lt; Progress & gt; Element, Absicht, Styling und Unterschiede vom & lt; Meter & gt; Element. Das Hauptaugenmerk liegt auf der Verwendung & lt; Fortschritt & gt; Für Aufgabenabschluss und & lt; Meter & gt; für stati

Der Artikel erörtert den HTML & lt; Datalist & gt; Element, das die Formulare verbessert, indem automatische Vorschläge bereitgestellt, die Benutzererfahrung verbessert und Fehler reduziert werden.Character Count: 159

Der Artikel erörtert das HTML & lt; Meter & gt; Element, verwendet zur Anzeige von Skalar- oder Bruchwerten innerhalb eines Bereichs und seine gemeinsamen Anwendungen in der Webentwicklung. Es differenziert & lt; Meter & gt; von & lt; Fortschritt & gt; und Ex

In Artikel werden Best Practices zur Gewährleistung der HTML5-Cross-Browser-Kompatibilität erörtert und sich auf die Erkennung von Merkmalen, die progressive Verbesserung und die Testmethoden konzentriert.

In dem Artikel werden unter Verwendung von HTML5 -Formularvalidierungsattributen wie Erforderlich, Muster, Min, MAX und Längengrenzen erörtert, um die Benutzereingabe direkt im Browser zu validieren.

In dem Artikel wird das Ansichtsfenster -Meta -Tag erörtert, das für das reaktionsschnelle Webdesign auf mobilen Geräten unerlässlich ist. Es wird erläutert, wie die ordnungsgemäße Verwendung eine optimale Skalierung von Inhalten und Benutzerinteraktion gewährleistet, während Missbrauch zu Design- und Zugänglichkeitsproblemen führen kann.

Der Artikel erörtert das & lt; iframe & gt; Der Zweck von Tag, externe Inhalte in Webseiten, seine gemeinsamen Verwendungen, Sicherheitsrisiken und Alternativen wie Objekt -Tags und APIs einzubetten.

GitePages statische Website -Bereitstellung fehlgeschlagen: 404 Fehlerbehebung und Auflösung bei der Verwendung von Gitee ...
