На самом деле у меня та же проблема в моем текущем проекте, и я действительно не имею понятия, так как вначале работал должным образом, но после некоторого изменения в коде он перестал работать.проблема в том, что я сделал много изменений, и я не могу себе представить, которые создают проблему
Hwr в вашем случае проще, к счастью.Вы никогда не должны передавать обработчик событий, как это в jquery.Используйте этот синтаксис:
$(".url").click( function(){
test();
});
Это работает!
РЕДАКТИРОВАТЬ: мои извинения, он все еще вызывает обработчик при сортировке.Вот два решения!
Наилучшее:
$("#srt").sortable({ helper: 'clone' });
$(".url").click( function() { $(this).text( "done" ); } );
Использование опции helper: 'clone' позволяет плагину не запускать обработчики для элементов.(обратите внимание, что я включил тело test () в анонимную функцию, в противном случае вы бы не смогли использовать «this»)
Ужаснее, и это вызывает проблемы с выпадением событий:
$("#srt").sortable();
$(".url").live('click', function() { $(this).text( "done" ); } );
Это только для целей обучения!поскольку события live () не находятся в самих элементах, они не запускаются сортируемым!