а для тех, кто не разобрался отвечу)
дело в том что вставляя код js внутрь атрибута onclick, тега a вы нарушаете синтаксис используя символ { или }, так как эти символы зарезервированы для вывода значения узла, переменной, параметра или атрибута указанного внутри фигурных скобок.
То есть вам надо убрать код
jQuery('html, body').animate( { scrollTop: 0 }, 'slow' );
из тега a
это можно сделать следующими способами:
1. использовать xsl конструкцию attribute передав значение для атрибута onclick через него, экранировав его через <![CDATA[...]]>
Пример:
<a title="Bookmark" class="bookmark" href="">
<xsl:attribute name="onclick"><![CDATA[jQuery('html, body').animate( { scrollTop: 0 }, 'slow' );]]></xsl:attribute >
<img border="0" title="" alt="" src="/images/top.gif" />
</a>
2. вынести этот код в отдельный файл, прописав там обработчик события на нажатие по данной ссылке
Пример:
код нашей ссылки остается почти таким же, только без атрибута onclick
<a title="Bookmark" class="bookmark" href="">
<img border="0" title="" alt="" src="/images/top.gif" />
</a>
Далее, мы создаем файл /js/dev/start.js (назвать и положить его можно как и куда угодно, это не принципиально, главное не забудьте подключить этот файл в вашем шаблоне). Код данного файла:
$(document).ready(function() {
jQuery('.bookmark').click(function(){
jQuery('html, body').animate( { scrollTop: 0 }, 'slow' );
})
});
P.S. и мой совет, добавь в конце кода js которым ты обрабатываешь нажатие на ссылку return false;
jQuery('html, body').animate( { scrollTop: 0 }, 'slow' ); return false;
, а то помимо скроллинга страницы вверх будет происходить еще и перезагрузка страницы.