2013-02-18 5 views
0

디자인중인 사이트에서 탭 탐색을 할 계획입니다. 처음에는 자바 스크립트로 만들 수 있습니다. 그러나 누군가가 웹을 탐색하면 Javascript가 꺼집니다. 그런 다음 다른 탭이 가리키는 링크를 보지 못합니다.점진적으로 개선 된 탭 탐색. (CSS 만 사용)

희망 사항에 대해 알려주세요. 이 사이트에서 (stackoverflow). 나는 JS가 비활성화 된 상태에서 탭 탐색을 시도했지만 아직 탭 탐색이 작동합니다. 어떻게 그걸 얻을 수 있는지에 대한 조언.

<ul class="tabbed-nav"> 
    <li><a href="#section1">Tab 1</a></li> 
</ul> 
<div class="tabbed-content"> 
    <div id="section1">I'm tab1</div> 
</div> 

답변

1

jQuery와 같은 도구를 사용하면이 작업을 가장 간단하게 수행 할 수 있습니다. http://jsfiddle.net/sqfSA/

또한

, 탭 UI 기능이 페이지를 참조하십시오 :

확인이 바이올린 JS http://jqueryui.com/tabs/

HTML는 정상 등과 같은 CSS 사용됩니다 직선 JS은 탭을 숨기거나 표시하는 데 사용됩니다. JS이 비활성화 된 경우 표시되는 데이터가 표시됩니다.

희망이 있습니다.

스택 오버플로가 필요하기 때문에 (복사 할 수 있으며이 작업을보고, 자신의 응용 프로그램이 붙여 넣기)

전체 코드 :

<html lang="en"> 
<head> 
<meta charset="utf-8" /> 
<title>jQuery UI Tabs - Default functionality</title> 
<link rel="stylesheet" href="http://code.jquery.com/ui/1.10.1/themes/base/jquery-ui.css" /> 
<script src="http://code.jquery.com/jquery-1.9.1.js"></script> 
<script src="http://code.jquery.com/ui/1.10.1/jquery-ui.js"></script> 
<link rel="stylesheet" href="http://jqueryui.com/tabs/resources/demos/style.css" /> 
<script> 
$(function() { 
$("#tabs").tabs(); 
}); 
</script> 
</head> 
<body> 
<div id="tabs"> 
<ul> 
<li><a href="#tabs-1">Nunc tincidunt</a></li> 
<li><a href="#tabs-2">Proin dolor</a></li> 
<li><a href="#tabs-3">Aenean lacinia</a></li> 
</ul> 
<div id="tabs-1"> 
<p>Proin elit arcu, rutrum commodo, vehicula tempus, commodo a, risus. Curabitur nec arcu. Donec sollicitudin mi sit amet mauris. Nam elementum quam ullamcorper ante. Etiam aliquet massa et lorem. Mauris dapibus lacus auctor risus. Aenean tempor ullamcorper leo. Vivamus sed magna quis ligula eleifend adipiscing. Duis orci. Aliquam sodales tortor vitae ipsum. Aliquam nulla. Duis aliquam molestie erat. Ut et mauris vel pede varius sollicitudin. Sed ut dolor nec orci tincidunt interdum. Phasellus ipsum. Nunc tristique tempus lectus.</p> 
</div> 
<div id="tabs-2"> 
<p>Morbi tincidunt, dui sit amet facilisis feugiat, odio metus gravida ante, ut pharetra massa metus id nunc. Duis scelerisque molestie turpis. Sed fringilla, massa eget luctus malesuada, metus eros molestie lectus, ut tempus eros massa ut dolor. Aenean aliquet fringilla sem. Suspendisse sed ligula in ligula suscipit aliquam. Praesent in eros vestibulum mi adipiscing adipiscing. Morbi facilisis. Curabitur ornare consequat nunc. Aenean vel metus. Ut posuere viverra nulla. Aliquam erat volutpat. Pellentesque convallis. Maecenas feugiat, tellus pellentesque pretium posuere, felis lorem euismod felis, eu ornare leo nisi vel felis. Mauris consectetur tortor et purus.</p> 
</div> 
<div id="tabs-3"> 
<p>Mauris eleifend est et turpis. Duis id erat. Suspendisse potenti. Aliquam vulputate, pede vel vehicula accumsan, mi neque rutrum erat, eu congue orci lorem eget lorem. Vestibulum non ante. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Fusce sodales. Quisque eu urna vel enim commodo pellentesque. Praesent eu risus hendrerit ligula tempus pretium. Curabitur lorem enim, pretium nec, feugiat nec, luctus a, lacus.</p> 
<p>Duis cursus. Maecenas ligula eros, blandit nec, pharetra at, semper at, magna. Nullam ac lacus. Nulla facilisi. Praesent viverra justo vitae neque. Praesent blandit adipiscing velit. Suspendisse potenti. Donec mattis, pede vel pharetra blandit, magna ligula faucibus eros, id euismod lacus dolor eget odio. Nam scelerisque. Donec non libero sed nulla mattis commodo. Ut sagittis. Donec nisi lectus, feugiat porttitor, tempor ac, tempor vitae, pede. Aenean vehicula velit eu tellus interdum rutrum. Maecenas commodo. Pellentesque nec elit. Fusce in lacus. Vivamus a libero vitae lectus hendrerit hendrerit.</p> 
</div> 
</div> 
</body> 
</html> 
+0

탭의 인터페이스가 jQuery UI에 의존하기 때문에 디자인이 깨질 것이라고 생각합니다. – chanHXC

+0

@chanHXC 어떻게 깨지겠습니까? 죄송합니다. 귀하의 의견을 이해하지 못하고 있습니다. 내 솔루션은 jQuery를 사용했다. jQuery는 탭과 같은 인터페이스 요소에 jQuery UI가 필요하다.원래 포스터가 묘사 한 방식대로 완벽하게 작동합니다. –

+0

javascript가 비활성화되어 있으면 jQuery와 jQueryUI를 사용하기 때문에 디자인이 손상 될 수 있습니다. jQueryUI를 시도하지는 않았지만. – chanHXC

3

내가 다시 몇 달 비슷한 짓을 ...

http://lloydsbankinggroupapprentices.com/

홈페이지의 '브랜드'섹션을 살펴보십시오.

JS를 끄면 앵커의 href가 본질적으로 내용을 볼 수 있습니다. 얼마 전 csstricks에서 본 멋진 트릭. 그래도 지금 페이지를 찾을 수 없습니까?

.tabbed-nav li a{ 
display: block; 
padding: 3px 10px; 
margin-right: 1px; 
background: #666; 
color: #fff; 

}

.tabbed-content{ 
position: absolute; 
top: 35px; 
height: 100px; 
overflow: hidden; 
width: 100%; 

}

.tabbed-content div{ 
position: relative; 
height: 100px; 
width: 300px; 

}

그리고 여기에 순수 CSS 탭 내용을 보여주는 JS 바이올린의 :

CSS의

은 매우 간단합니다. 당신이 어떤 질문이 경우

http://jsfiddle.net/danvoyce/DUL6N/

은 우리에게 소리를 줘!

+1

실제 작업 코드를 게시하십시오. 이 링크는 미래에 변경 될 수 있으며 다른 누구에게도 쓸모없는 답변이 될 수 있습니다. –

+0

제 잘못입니다. 이 장소에 아직도 멍청한 놈! 나는 CSS 스 니펫과 완전히 작동하는 바이올린으로 업데이트했다. – DanV

+0

@DanV 그래, 탭 내용에 고정 높이를 지정하고 컨테이너에 overflow : hidden을 사용하는 것은 좋은 속임수입니다. 그러나 요소의 높이를 미리 알 수 없기 때문에 이것은 비현실적 인 것처럼 보입니다. – chanHXC