2013-03-18 15 views
11

Tıklandığında bir twitter bootstrap popover görüntüleyen bir HTML div öğem var. Güncel kod şuna benzer:Neden html title özelliği ve twitter bootstrap verileri-orijinal-title karşılıklı olarak münhasırdır?

<div class="popover" title="supplementary info about html element" 
    data-original-title="popover title" data-content="popover content..."> 
</div> 

$(document).on('ready', function() { 
    App.Utils.Popover.enableAll(); 
}); 

App.Utils.Popover = { 
    enableAll: function() { 
    $('.popover').popover(
     { 
     trigger: 'click', 
     html : true, 
     container: 'body', 
     placement: 'right' 
     } 
    ); 
}; 

Sorun twitter önyükleme başlık yerine veri orijinal-başlık kullanmanın Popup başlığı olarak değerini ve öznitelik görüntüleri almasıdır. İkinin de birlikte tasarlanması için herhangi bir yolu var mı?

+1

düşünülmüştü:

<script src="bower_components/bootstrap-sass/js/bootstrap-popover.js"></script> <script type="text/javascript"> // dirty hack $.fn.popover.Constructor.prototype.fixTitle = function() {}; </script> 

Şimdi mouseover tarayıcılar için popover için bir başlık ve bir başlık ekleyebilirsiniz? – Alohci

+0

Bu, https://github.com/twbs/bootstrap/issues/15359 –

cevap

8

Bunun nedeni, popover javascript'inin tooltip javascript'ini genişletmesi ve tooltip javascript'inin (inanıyorum) title özniteliği tarafından ayarlanan varsayılan araç ipucunun yerini almasıdır.

Bu kod (253ish gibi, önyükleme-tooltip.js olarak) suçlu

, fixTitle: function() { 
    var $e = this.$element 
    if ($e.attr('title') || typeof($e.attr('data-original-title')) != 'string') { 
    $e.attr('data-original-title', $e.attr('title') || '').attr('title', '') 
    } 
} 

Burada daha sonra veri orijinal başlıktaki niteliği başlık niteliği ile değiştirildiği bir başlıkta adı geçen özelliği olup olmadığını.

Edit Temelde cevabım kolay bir yol yoktur. Öyleyse önyükleme js'yi biraz modifiye etmeliydin ama bu durumda gerçekten tavsiye etmem. Belki de o kodun içinde bulunmayabilecek olan önyükleme engelleyicisinin eski bir sürümünü kullanın.

+0

yardımcı olabilir, ben sadece github bir konu olarak yayınlayacağım. Çok teşekkürler! – keruilin

1

Aynı sorun vardı ve farklı bir Bootstrap sürümü kullanamadım, bu yüzden işlevimi popover prototipine enjekte etmeye karar verdim. evde bu çalışmayın: Ne

<i data-placement="bottom" data-trigger="click" 
    bs-popover="'views/partials/notifications.html'" data-html="true" 
    data-unique="1" 
    data-original-title="This title will be used by the popover" 
    title="This title will be used by a browser for a mouseover" 
/> 
İlgili konular