Почему я получаю синтаксическую ошибку после попытки присоединить live () к вкладкам jQueryUI ()? - PullRequest
1 голос
/ 27 ноября 2010

Почему я получаю синтаксическую ошибку Firebug при переходе от этого:

$( "#tabs" ).tabs({

к этому:

<script>
$(function() {
  $("#tabs").live('tabs', function(event){
        ajaxOptions: {
            error: function( xhr, status, index, anchor ) {
                $( anchor.hash ).html(
                    "Couldn't load this tab. We'll try to fix this as soon as possible. " +
                    "If this wouldn't be a demo." );
            }
        }
    });
});
</script>



<div class="demo">

    <div id="tabs">
        <ul>
            <li><a href="#tabs-1">Name</a></li>
            <li><a href="#tabs-2">Address</a></li>
        </ul>
        <div id="tabs-1">
            <div id="dynamicContent">
                John Doe
            </div>
        </div>
        <div id="tabs-2">
            Cupertino, California
        </div>
    </div>

</div><!-- End demo -->

Мне нужна функция live(), потому что я стираю внутреннююHTML, где элемент tabs существует в течение жизненного цикла страницы.

1 Ответ

2 голосов
/ 28 ноября 2010

tabs() не является установщиком обработчика событий, это просто метод объекта jQuery. Live установит обработчик событий, поэтому вы не сможете его использовать.

Я не думаю, что есть простой способ автоматически создавать вкладки; вы не можете создавать вкладки при добавлении нового контента?

...