PDA

Просмотр полной версии : Вставка собственного тега внутрь тега <a></a> в меню


lexun
10.04.2007, 19:14
Выкладываю по просьбе ребят с канала IRC.

Возникла проблема при переносе сверстанного сайта (css) на typo3.
В верстке сложного меню необходимо было вставить внутрь тега <a></a> тег <span></span> Ребята на канале IRC пытались мне помочь, но у нас ничего не выходило. Решение пришло после долгого копания документации и экспериментов.

Нашел чудо свойство doNotLinkIt = 1, которое отключает ссылку.
Потом нашел свойство subst_elementUid = 1, которое включает {elementUid} элемента меню.
И ручками сформировал ссылку.

temp.menu_1 = HMENU

temp.menu_1.1 = TMENU

temp.menu_1.1 {

NO.doNotLinkIt = 1
NO.allWrap = <li><div class='ma1'><div class='ma2'><div class='mt'></div></div></div> <div class='mbg'><a href="/index.php?id={elementUid}" onfocus="blurLink(this);"><span>|</span></a></div><div class='ma4'><div class='ma3'><div class='mb'></div></div></div></li>
NO.subst_elementUid = 1


ACT = 1
ACT.doNotLinkIt = 1
ACT.allWrap = <li class='act'><div class='ma1'><div class='ma2'><div class='mt'></div></div></div> <div class='mbg'><a href="/index.php?id={elementUid}" onfocus="blurLink(this);"><span>|</span></a></div><div class='ma4'><div class='ma3'><div class='mb'></div></div></div></li>
ACT.subst_elementUid = 1
}

Tod
10.04.2007, 20:09
В общем, не знаю какой сложности там нужен <span>, но в TSRef есть такая фишка как: ATagBeforeWrap + linkWrap. По идее должно помочь)

GF
10.04.2007, 21:09
В общем, не знаю какой сложности там нужен <span>, но в TSRef есть такая фишка как: ATagBeforeWrap + linkWrap. По идее должно помочь)

Как мы его не крутили ATagBeforeWrap вставляет ВНЕ, а не В тэг <a>.. Как нить на досуге попробуй.. а если ты прав, то, плиз, код в студию.

Pavel Antonov
10.04.2007, 21:21
stdWrap - работает на текст в ссылке!

stdWrap.wrap = <span>|</span>
Все что нужно

Руками если и генерить ссылки то только через typolink! ... То что Вы делаете категарически делать нельзя!

Tod
10.04.2007, 21:33
Ну может я не совсем понял что требовалось))
По фразе "В верстке сложного меню необходимо было вставить внутрь тега <a></a> тег <span></span>" кроме ATagBeforeWrap ниче в голову не приходит))

Посему вопрос - можно код этого сложного меню в студию))

lexun
11.04.2007, 10:51
Ну там не так уж и сложно, был предоставлен сверстанный сторонним дизайнером сайт (4 страницы) моя задача вкрутить его в ЦМС за 3 дня, пришлось паралельно знакомится с TYPO3 и вкручивать, успел за 4 дня...
А меню показано в первом посте.
Pavel Antonov - stdWrap у меня только обрабатывал текст вместе со ссылкой, я много всего перепробовал пока обратился на канал IRC, там к сожалению идеи типа ATagBeforeWrap + linkWrap тоже не работали... вот наковырял то что написал в первом посте. Возможно typolink это правильнее, но с моим опытом typo3 я пока судить не могу :)
Может перепишете код в первом посте для пользования typolink ?
Все будут благодарны.

Pavel Antonov
11.04.2007, 14:38
Pavel Antonov - stdWrap у меня только обрабатывал текст вместе со ссылкой, я много всего перепробовал пока обратился на канал IRC, там к сожалению идеи типа ATagBeforeWrap + linkWrap тоже не работали... вот наковырял то что написал в первом посте. Возможно typolink это правильнее, но с моим опытом typo3 я пока судить не могу :)
Может перепишете код в первом посте для пользования typolink ?
Все будут благодарны.

Плохо пробовали...или не захотели пробовать. Все прекрасно работает. Вот код из рабочего проекта:
1 = TMENU
1 {
wrap = <div id="login">|</div>
NO.wrapItemAndSub = <h4>|</h4>
NO.stdWrap.wrap = |&nbsp;&gt;&gt;
}
Вставляет галочки после текста, но в ссылке. Работает!!!

Приводить код по typolink смысла нет. Чего лечить несуществующую болезнь? Если интересно, читайте TSref.

lexun
11.04.2007, 15:35
Все заработало отлично, большое спасибо, все приходит с опытом.