Jquery,实时“标题”属性更改

时间:2015-01-09 22:47:47

标签: javascript jquery tooltip

我有一个跨度,每秒都会在工具提示中显示一些来自服务器的数据:

<span class="bata hastip" title="{will change}"></span>

我正在使用tooltipsy插件来显示工具提示:

$('.hastip').tooltipsy({
        offset: [-10, 0],
        css: {
            'background-color': '#444F54',
            'border': '1px solid #888'
        }
})

由于我的数据每隔几秒钟就会发生变化,我该如何检测到这种变化?像这样:

$('.bata').prop('title', datas);
//$('.bata').attr('title', datas) same...

$(document).on('change', '.bata', function(){
   //this method doesn't work
});

1 个答案:

答案 0 :(得分:1)

&#34;您指的是DOM Mutation事件。这些事件的浏览器支持很差(但正在改进)。 jQuery的Mutation Events插件可能会让你有所帮助。&#34;

请参阅此相关问题:firing event on DOM attribute change

快捷方式 - 检查一下:)

https://developer.mozilla.org/en-US/docs/Web/API/MutationObserver

支持非常好,除了IE11 +

来自MDN的示例用法:

// select the target node
var target = document.querySelector('#some-id');

// create an observer instance
var observer = new MutationObserver(function(mutations) {
  mutations.forEach(function(mutation) {
    console.log(mutation.type);
  });    
});

// configuration of the observer:
var config = { attributes: true, childList: true, characterData: true };

// pass in the target node, as well as the observer options
observer.observe(target, config);

// later, you can stop observing
observer.disconnect();