Javascript 将样式设置为标题值
让我解释一下我在做什么: 我将遍历一些字符串数组,每个字符串都被添加到元素和某个类中以更改其颜色。 所有这些元素都附加到一个元素,然后该元素被设置为元素的title属性值 有道理吗D 我的工具提示中没有一个很好的列表,而是有如下内容: 请忽略没有元素,我已经修复了 下面是一个例子,说明这样一个标签看起来像是直接从Chrome复制的outerHTML:Javascript 将样式设置为标题值,javascript,jquery,twitter-bootstrap-3,Javascript,Jquery,Twitter Bootstrap 3,让我解释一下我在做什么: 我将遍历一些字符串数组,每个字符串都被添加到元素和某个类中以更改其颜色。 所有这些元素都附加到一个元素,然后该元素被设置为元素的title属性值 有道理吗D 我的工具提示中没有一个很好的列表,而是有如下内容: 请忽略没有元素,我已经修复了 下面是一个例子,说明这样一个标签看起来像是直接从Chrome复制的outerHTML: <label data-toggle="tooltip" data-html="true" data-placement="bottom"
<label data-toggle="tooltip" data-html="true" data-placement="bottom" class="btn btn-default" title="<ul><li class="green">Tequila</li><li class="green">Gin</li></ul>">Angel<input type="radio" id="cocktails" name="cocktail" value="angel"></label>
不要使用.proptitle…,而是使用.attrtTitle…您不能在本机工具提示中使用HTML。相反,您可能希望使用项目符号•和换行符&10;,以纯Unicode格式创建列表;,比如:
如果你需要更多的东西,你必须考虑自己显示工具提示,而不是依赖浏览器,例如用Bootstrap工具提示,如果你只需要对它们进行风格化:
如果你需要完整的HTML,也可以使用一些更复杂的工具提示库,如Overlib。标题属性不能是HTML,它们只是文本。如果你将HTML数据属性设置为true,它们就可以。但是我以前成功地设置了它们的样式,所以一定有办法。它没有改变任何东西;你能做一个console.logToolTipeElement.html来看看里面有什么吗?因为你的答案,我找到了遗漏的东西:D-因为我使用的是引导工具提示,所以我需要用$'[data toggle=tooltip]'激活它们;我放错地方了。
var tooltipElement = $("<ul></ul>");
for (var u = 1; u < nameAndBottlesArr.length; u++)
{
var bottleAndBool = nameAndBottlesArr[u].split('=');
var bottleName = bottleAndBool[0];
var bottleBool = bottleAndBool[1];
var colorClass = (bottleBool === '1') ? 'green' : 'red';
var listEntry = $("<li></li>").addClass(colorClass).text(bottleName);
tooltipElement.append(listEntry);
}
var cocktailName = nameAndBottlesArr[0];
var alreadyListed = $('.btn-group').find('[value="' + cocktailName + '"]')[0];
//Append Radiobutton for each Cocktail, disable unavailable cocktail-radios
if (!alreadyListed) {
var $radio = $('<input>').attr({
type: 'radio',
id: 'cocktails',
name: 'cocktail',
value: cocktailName
});
var $label = $('<label data-toggle="tooltip" data-html="true" data-placement="bottom"></label>')
.addClass("btn btn-default")
.prop("title", tooltipElement.html())
.text(cocktailName.replace(/\w\S*/g, capitalize));
if (!sortedCocktails[i].availability) {
$label.addClass("disabled");
}
$label.append($radio);
$(".btn-group").append($label);
}
<label title="• line 1 • line 2">