2013-03-18 9 views
11

मेरे पास एक HTML div तत्व है जो क्लिक करते समय एक ट्विटर बूटस्ट्रैप पॉपओवर प्रदर्शित करता है। वर्तमान कोड इस तरह दिखता है:एचटीएमएल शीर्षक विशेषता और ट्विटर बूटस्ट्रैप डेटा-मूल-शीर्षक पारस्परिक रूप से अनन्य क्यों है?

<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' 
     } 
    ); 
}; 

समस्या चहचहाना बूटस्ट्रैप शीर्षक विशेषता है कि इसके बजाय डेटा-मूल-शीर्षक का उपयोग करने का पॉपअप के शीर्षक के रूप मूल्य और प्रदर्शित करता है लेता है। उद्देश्य के रूप में दोनों काम एक साथ बनाने के लिए कोई तरीका है?

+1

क्या इरादा था:

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

अब आप अपना माउस ले ब्राउज़रों के लिए पॉपओवर के लिए एक शीर्षक और एक शीर्षक जोड़ सकते हैं? – Alohci

+0

यह https://github.com/twbs/bootstrap/issues/15359 –

उत्तर

8

ऐसा इसलिए है क्योंकि पॉपओवर जावास्क्रिप्ट टूलटिप जावास्क्रिप्ट को बढ़ाता है, और टूलटिप जावास्क्रिप्ट (मुझे विश्वास है) शीर्षक विशेषता द्वारा निर्धारित डिफ़ॉल्ट टूलटिप को प्रतिस्थापित करने का इरादा है।

इस कोड (, बूटस्ट्रैप-tooltip.js में 253ish) की तरह दोषी है

, 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', '') 
    } 
} 

कहाँ अगर वहाँ एक शीर्षक विशेषता तो डेटा-मूल-शीर्षक विशेषता शीर्षक विशेषता द्वारा बदल दिया जाता है।

संपादित करें मूल रूप से मेरा उत्तर होगा कोई आसान तरीका नहीं है। आपको बूटस्ट्रैप जेएस को थोड़ा सा करना होगा हालांकि मैं वास्तव में इस मामले में अनुशंसा नहीं करता। हो सकता है कि बूटस्ट्रैप पॉपओवर के पुराने संस्करण का उपयोग करें जिसमें उस कोड में न हो?

+0

मदद कर सकता है मैं इसे गिटूब पर एक समस्या के रूप में पोस्ट करूंगा। आपका बहुत बहुत धन्यवाद! – keruilin

1

मैं एक ही समस्या थी और एक अलग बूटस्ट्रैप संस्करण का उपयोग करने में सक्षम नहीं था, इसलिए मैं पॉपओवर प्रोटोटाइप में मेरी समारोह इंजेक्षन का फैसला किया। घर पर इस कोशिश मत करो:

<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" 
/> 
संबंधित मुद्दे