2013-03-01 2 views
0

Я работаю с jquery-ui. Я могу создавать элементы с заголовками и показывать названия. Однако при щелчке я хотел бы взять заголовок и заполнить еще один div (это потому, что сенсорные устройства не имеют всплывающих подсказок). Я могу получить событие click, но я не могу получить заголовок во время события click.jQuery-ui Tooltip get Заголовок по клику

$("div").click(function(event) { 
     // just to prove that we are entering this event 
     $("#preShow").html (Date()); 

     // show the title 
     var toolTip = this.attributes.title.value; 
     $("#show").html (toolTip); 

     // just to prove that there was no crash 
     $("#postShow").html (Date()); 
    }); 

Я также попытался с помощью

var toolTip = $(this).attr ("title"); 

Вот это jsfiddle показывает проблему

http://jsfiddle.net/jK5xQ/

Тот же самый код работает если создать файл HTML и запустить его в Firefox с точкой останова в первой строке события click. Кто-нибудь испытал это?

ответ

1

Это потому, что всплывающая подсказка jQueryUI удаляет заголовок и использует его. Попробуйте идти об этом, как это ...

$(document).ready(function() { 
    $(document).tooltip({ 
     track: true, 
     content: function() { 
      return $(this).attr("title"); 
     } 
    });  
    $('div').click(function(){ 
     $('#show').html($('#' + $(this).attr('aria-describedby')).children().html()); 
    }); 
}); 

DEMO: http://jsfiddle.net/jK5xQ/4/

Позвольте мне знать, если у вас есть какие-либо вопросы!

+0

это работает. Благодарю. –

+1

Старый вопрос, но для тех, кто ищет это, я бы предложил сохранить текущий заголовок в атрибуте данных элемента, а не искать aria-descriedby-tag. Например, мы используем какой-то пользовательский HTML внутри всплывающей подсказки, который замалчивает предлагаемое решение. Самый простой способ его решения - добавить что-то вроде '$ (this) .data ('current-title', element.attr ('title'));' к функции содержимого, а затем искать этот атрибут данных при щелчке, если вместо этого он не имеет названия использования. –

Смежные вопросы