2011-12-05 5 views
3

그래서이 태그를HTML 태그의 속성을 만들어 사용의 부정적인 영향이 있습니까

<a href=""></a> 

이 있고 묻는다면 나는 어떤 표준이 아닌 속성을

<a lol="haha" href=""></a> 

를 구성한다고 가정 왜, 그럼 내가 그 javascript에서 속성을 만들어 편리하게 사용할 수 있습니다 ...

내 질문은 ...이 일을 부정적인 영향을 미칠 수 있습니다 .... 거기에 어떤 좋은 이유가 있습니다 이러면 안돼? 고급의

감사합니다.

+3

HTML 경찰이 이미 문앞에 있습니다 ... – nnnnnn

+0

다른 사람들처럼 사용자 지정 속성에 "data-"접두사를 추가했습니다. LOL 대신에 데이터 롤과 비슷합니다. HTML5 사양에 따르면 해당 접두어가있는 사용자 정의 속성은 유효하고 다른 속성은 유효하지 않습니다. – TK123

답변

7

브라우저는 거의 모든 사용자 지정 특성을 처리합니다. 그리고 제가 보편적으로 말할 때, 나는 even IE6을 의미합니다. 당신이 jQuery를 태그 한 이후이

$("a").data("lol"); 
으로 (심지어 IE6에서) 읽을 수는 말할 것입니다,

<a data-lol="haha" href=""></a> 

어느 : 그 작업을 수행하는 표준 방법 물론

는 함께

+0

IE6에서 확실히 처리합니다. IE5.5도 그것을 처리했습니다. 나는 그 이상을 기억할 수 없다. (실제로는 IE5.5가 하이픈이있는 속성을 처리하는지 잘 모르겠지만 _definitely_ 질문과 같이 한 단어 맞춤 속성을 처리했습니다.) – nnnnnn

+0

@nnnnn - 감사합니다. 그랬어. 나는 당신에게 5.5의 단어를 가져다 줄 것이다. 나는 6이 그것에 부딪히지 않는다는 말을 듣고 꽤 충격을 받았다. 그 브라우저에 대한 기대치는 꽤 낮습니다. –

+0

최근 18 개월 전부터 IE6 (및 코드)을 사용하도록 강요 받았고, 주요 문제는 특정 CSS 기능에 대한 비표준 처리 (또는 지원 부족)에 관한 것이 었습니다. . (이벤트 관련 항목은 대부분의 경우 쉽게 해결할 수있었습니다.) – nnnnnn

1

정확하게 만들어진 속성 패밀리가 있습니다 : data-*. 당신은 사용해야한다

<a data-lol="haha" href="#"></a> 

그것은 유효 할 것이다 어떤 두통에서 당신을 저장하십시오. 사용자 지정 특성이 미리 정의 된 특성 (또는 아직 존재하지 않는 특성)과 충돌하거나 규격을 준수하지 않는 분석기에서 문제를 일으킬 수 있습니다.

1

당신은 HTML5와 함께이 작업을 수행 할 수 있습니다

<a data-lol="haha" href=""></a> 

단점에 관해서는, 나는이 말을한다 : 표준은 이유가 만들어집니다. 단지 그것이 이기 때문에 이 앞으로는 일을 의미하지는 않습니다.

+0

일부 HTML5 이전 브라우저도이를 지원하므로 매우 안전한 옵션입니다. – nnnnnn

관련 문제