Pål*_*Pål 31 css jquery twitter-bootstrap
我想样式(css)一些bootstrap-tooltip.js工具提示,而不影响所有的工具提示.我尝试了很多不同的解决方案,但我总是最终在触发工具提示的元素中添加一个类.
这是我试过的:
$(function(){
$("[id$=amount]").tooltip({
trigger: 'manual',
placement: 'right'
}).addClass("test"); // <--- This does not help me. Class just ends up
}); // in the trigger element. Se html output
// from firebug below...
Run Code Online (Sandbox Code Playgroud)
但是这个类只会在触发工具提示的元素中结束:
<input
id="list_wishes_attributes_0_amount"
class="test" <!-- The class I tried to add to the tooltip ended up here. -->
type="text"
tabindex="3"
size="30"
rel="tooltop"
name="list[wishes_attributes][0][amount]"
min="0"
data-original-title="Only numbers please"
/>
Run Code Online (Sandbox Code Playgroud)
如何为工具提示分配自定义类,而不是触发它的输入字段?
Yoh*_*ohn 57
$().tooltip({
template: '<div class="tooltip CUSTOM-CLASS"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>'
})
Run Code Online (Sandbox Code Playgroud)
cne*_*uro 22
我使用的方法是通过JQuery将一个类直接附加到元素(在Bootstrap 3中工作).这有点棘手,因为你需要通过父data
属性找到隐藏的,自动生成的元素.
$('#[id$=amount]')
.tooltip()
.data('bs.tooltip')
.tip()
.addClass('custom-tooltip-class');
Run Code Online (Sandbox Code Playgroud)
我更喜欢这个来覆盖模板,因为它比所有额外的HTML更简洁,更简洁.
and*_*tor 12
我为Bootstrap Tooltip插件创建了一个小扩展,它允许我们通过customClass
在Javascript中使用参数或通过data-custom-class
HTML中的属性为工具提示添加自定义类.
data-custom-class
属性:data-custom-class="tooltip-custom"
- 与班级一起构建工具提示tooltip-custom
.
<button type="button" class="btn btn-default" data-toggle="tooltip" data-placement="top" data-custom-class="tooltip-custom" title="Custom tooltip example">Tooltip example</button>
Run Code Online (Sandbox Code Playgroud)
customClass
参数:customClass: 'tooltip-custom'
$('.my-element').tooltip({
customClass: 'tooltip-custom'
});
Run Code Online (Sandbox Code Playgroud)
代码根据使用的Bootstrap版本(v3,v4-alpha或v4)而有所不同.
使用Javascript
;(function($) {
if (typeof $.fn.tooltip.Constructor === 'undefined') {
throw new Error('Bootstrap Tooltip must be included first!');
}
var Tooltip = $.fn.tooltip.Constructor;
// add customClass option to Bootstrap Tooltip
$.extend( Tooltip.Default, {
customClass: ''
});
var _show = Tooltip.prototype.show;
Tooltip.prototype.show = function () {
// invoke parent method
_show.apply(this,Array.prototype.slice.apply(arguments));
if ( this.config.customClass ) {
var tip = this.getTipElement();
$(tip).addClass(this.config.customClass);
}
};
})(window.jQuery);
Run Code Online (Sandbox Code Playgroud)
CSS
.tooltip-custom .tooltip-inner {
background-color: #5b2da3;
}
.tooltip-custom.bs-tooltip-top .arrow:before {
border-top-color: #5b2da3;
}
.tooltip-custom.bs-tooltip-right .arrow:before {
border-right-color: #5b2da3;
}
.tooltip-custom.bs-tooltip-left .arrow:before {
border-left-color: #5b2da3;
}
.tooltip-custom.bs-tooltip-bottom .arrow:before {
border-bottom-color: #5b2da3;
}
Run Code Online (Sandbox Code Playgroud)
萨斯
@mixin tooltip-custom($bg-color, $color: $tooltip-color) {
.tooltip-inner {
background-color: $bg-color;
@if $color != $tooltip-color {
color: $color;
}
}
&.bs-tooltip-top .arrow:before {
border-top-color: $bg-color;
}
&.bs-tooltip-right .arrow:before {
border-right-color: $bg-color;
}
&.bs-tooltip-left .arrow:before {
border-left-color: $bg-color;
}
&.bs-tooltip-bottom .arrow:before {
border-bottom-color: $bg-color;
}
}
Run Code Online (Sandbox Code Playgroud)
示例:https: //jsfiddle.net/zyfqtL9v/
使用Javascript
(function ($) {
if (typeof $.fn.tooltip.Constructor === 'undefined') {
throw new Error('Bootstrap Tooltip must be included first!');
}
var Tooltip = $.fn.tooltip.Constructor;
$.extend( Tooltip.DEFAULTS, {
customClass: ''
});
var _show = Tooltip.prototype.show;
Tooltip.prototype.show = function () {
_show.apply(this,Array.prototype.slice.apply(arguments));
if ( this.options.customClass ) {
var $tip = this.tip()
$tip.addClass(this.options.customClass);
}
};
})(window.jQuery);
Run Code Online (Sandbox Code Playgroud)
CSS
.tooltip-custom .tooltip-inner {
background-color: #5b2da3;
}
.tooltip-custom.top .tooltip-arrow {
border-top-color: #5b2da3;
}
.tooltip-custom.right .tooltip-arrow {
border-right-color: #5b2da3;
}
.tooltip-custom.left .tooltip-arrow {
border-left-color: #5b2da3;
}
.tooltip-custom.bottom .tooltip-arrow {
border-bottom-color: #5b2da3;
}
Run Code Online (Sandbox Code Playgroud)
示例:https: //jsfiddle.net/cunz1hzc/
使用Javascript
;(function($) {
if (typeof $.fn.tooltip.Constructor === 'undefined') {
throw new Error('Bootstrap Tooltip must be included first!');
}
var Tooltip = $.fn.tooltip.Constructor;
// add customClass option to Bootstrap Tooltip
$.extend( Tooltip.Default, {
customClass: ''
});
var _show = Tooltip.prototype.show;
Tooltip.prototype.show = function () {
// invoke parent method
_show.apply(this,Array.prototype.slice.apply(arguments));
if ( this.config.customClass ) {
var tip = this.getTipElement();
$(tip).addClass(this.config.customClass);
}
};
})(window.jQuery);
Run Code Online (Sandbox Code Playgroud)
CSS
.tooltip-custom .tooltip-inner {
background-color: #5b2da3;
}
.tooltip-custom.tooltip-top .tooltip-inner::before,
.tooltip-custom.bs-tether-element-attached-bottom .tooltip-inner::before {
border-top-color: #5b2da3;
}
.tooltip-custom.tooltip-right .tooltip-inner::before,
.tooltip-custom.bs-tether-element-attached-left .tooltip-inner::before {
border-right-color: #5b2da3;
}
.tooltip-custom.tooltip-bottom .tooltip-inner::before,
.tooltip-custom.bs-tether-element-attached-top .tooltip-inner::before {
border-bottom-color: #5b2da3;
}
.tooltip-custom.tooltip-left .tooltip-inner::before,
.tooltip-custom.bs-tether-element-attached-right .tooltip-inner::before {
border-left-color: #5b2da3;
}
Run Code Online (Sandbox Code Playgroud)
SASS mixin:
@mixin tooltip-custom($bg-color, $color: $tooltip-color) {
.tooltip-inner {
background-color: $bg-color;
@if $color != $tooltip-color {
color: $color;
}
}
&.tooltip-top,
&.bs-tether-element-attached-bottom {
.tooltip-inner::before {
border-top-color: $bg-color;
}
}
&.tooltip-right,
&.bs-tether-element-attached-left {
.tooltip-inner::before {
border-right-color: $bg-color;
}
}
&.tooltip-bottom,
&.bs-tether-element-attached-top {
.tooltip-inner::before {
border-bottom-color: $bg-color;
}
}
&.tooltip-left,
&.bs-tether-element-attached-right {
.tooltip-inner::before {
border-left-color: $bg-color;
}
}
Run Code Online (Sandbox Code Playgroud)
}
示例:https: //jsfiddle.net/6dhk3f5L/
https://github.com/andreivictor/bootstrap-tooltip-custom-class
归档时间: |
|
查看次数: |
36944 次 |
最近记录: |