2010-11-18 6 views
5

내 프로젝트는 자바 스크립트를 사용하여 하이퍼 링크 클릭시 콘텐츠를 동적으로 표시합니다. JavaScript가 활성화되지 않은 상태에서 깔끔하게 품질을 저하 시키려면 모든 페이지 내용을 표시하고 하이퍼 링크와 앵커를 사용하여 조각을 연결하십시오.noscript to hyperlinks 필터 추가 - JavaScript 품질 저하

jQuery를 사용하여 ID로 하이퍼 링크 클릭을 식별하므로 JavaScript가 없으면 앵커를 추가해야합니다.

noscript를 사용하는 것이 좋습니까? 주로 이것은 JavaScript없이 하이퍼 링크를 추가 할 것인가?

<div id="link1"> 
    <noscript><a href="#link1content"></noscript> 
    1. Link Name Here 
    <noscript></a></noscript> 
</div> 

답변

5

요소가 다른 요소를 포함, 단지 태그 없습니다. 시작 태그와 종료 태그는 컨테이너에 있어야합니다. validator이이를 선택했을 것입니다.

처음에는 noscript를 사용해서는 안됩니다. 의 라인을 따라 뭔가 더 :

<a class="enhanced_in_some_way" href="#link1content">1. Link Name Here</a> 

jQuery('a.enhanced_in_some_way').click(function (event) { 
    var link = this; 
    var name = /#([^#]+$)/.exec(link.href); 
    do_something_with(name); 
    event.preventDefault(); 

}); 

와 ... 아마 앞으로 방법입니다.

0

많은 브라우저에서 정상적으로 작동하지만 권장하지 않습니다. HTML의 구조가 완전히 깨 졌으므로 현재 작동하는 모든 브라우저 또는 향후 버전의 브라우저에서 작동하지 않을 수 있습니다.

0

실제로 여기에는 noscript가 필요하지 않습니다. 기본적으로 앵커 대상을 하이퍼 링크에 넣고 jQuery 또는 javascript 클릭 함수에서 return false 또는 event.preventDefault();으로 끝냅니다. 이렇게하면 JavaScript가 활성화되어 있으면 링크가 지켜지지 않고 비활성화 된 경우 뒤따라 오는 앵커가됩니다. 최소한의 오버 헤드로 두 가지 방법으로 모두 다룰 수 있습니다.