Добавить собственные тэги в пространство имен
Предположим, я хочу добавить собственные тэги, которые распознавались бы браузером. Аналогично, например, кнопке Google+, которая имеет тэг
<g:plusone></g:plusone> Я знаю, что средствами xml мы можем как-то добавлять собственное пространство имен в документ. Хотелось бы увидеть простой пример. Спасибо. |
в XHTML такое возможно зовётся модуляризацией помоему. В яндексе найдёш много статей обзазца 2001 года на эту тему )))) Стоит помнить что XHTML не особо популярен )
А вот в html едва ли это возможно. Свой тег в html добавить конечно можно но вот отображаться он не будет. (тут в голову мысль пришла а если ему CSS свойства добавить :) ) Возможно получится написать скрипт на js, который будет находит твои эксклюзивные теги и оживлять. jQuery если я неошибаюсь такие эксклюзивные теги не находит :) ), в крайне случае будешь искать в голом тексте ))) Но в любом случае игра свеч не стоит) |
А в чём проблема? Пишете свои теги и всё.
|
Цитата:
<style> myTag {color: red;} otherTag {display: block;border: 1px solid black;} </style> <myTag>My Tag</myTag> <otherTag>Other Tag</otherTag> |
дас теги свои и вправду отображаются.
Теперь ХЗ чо за фигня была, когда я эксперементирова, но Обломался. Порадовало что jQuery даже нашёл эти теги. Однако отличился internet explorer. $("myTag").append(" hello "); Приводит к ошибке в библиотеке jQuery. проверял на 7й версии IE. |
чтобы ie работал с тэгами, которых он не знает, их нужно предварительно программно создать, типа document.createElement('myTag').
Посмотрите, как это сделано вот тут: http://code.google.com/p/html5shim/ |
Цитата:
|
Меня интересует, как например работает кнопка google+. Она же ведь как-то работает? Тут, как я понимаю, новым тэгам поставлены в соответствие некоторые конструкции из обычных тэгов. Чтобы можно было использовать их для удобства и краткости.
|
Ну кнопка гугл как я понимаю делает замену, ну или что то в этом духе.
<walikPlus></walikPlus> <script> var result = document.getElementsByTagName('walikPlus'); var link = document.createElement('a'); link.href = '#'; link.innerHTML = '+1'; link.onclick = function() {this.innerHTML = 'Voted';return false;} for(i = 0;i<result.length;i++) { result[i].parentNode.replaceChild(link, result[i]) } </script> |
Часовой пояс GMT +3, время: 14:38. |