Есть обычное меню
<?php $this->widget('zii.widgets.CMenu',array(
'items'=>array(
array('label'=>'Home', 'url'=>array('#')),
array('label'=>'About', 'url'=>array('#about')),
array('label'=>'About2', 'url'=>array('#about2')),
),
'id'=>'top-menu',
'htmlOptions'=>array('class'=>'top-menu'),
)); ?>
добавляем в макет
<script type="text/javascript">
$(function(){
$('a').click(function(){
alert('Работает');
return false;
});
});
</script>
В итоге при клике на ссылку в меню просто происходит переход к якорю, но если вставить ссылку руками в любую часть страницы, например
<a href="#about2">я ссылка не из меню</a>
то алерт прекрасно срабатывает.
Опять же, если заменить
$('a').click(function(){
на
$('li').click(function(){
то при щелчке мимо ссылки на li алерт срабатывает.
Уже пробовал и
$('li a')
и
$('.top-menu li a')
и по всякому
Почему не вешается на ссылку в меню обработчик?
UPD:
Все, вопрос решился заменой
$('a').click(function(){
на
$('a').live('click',function(){
Сам затупил