我有以下javascript代码:
window.toggle = function() {
if( document.getElementById("calendar").style.display=='none' ){
document.getElementById("calendar").style.display = '';
$(".icon-chevron-down").removeClass("icon-chevron-down").addClass("icon-chevron-up");
document.getElementById("label").innerText = "Hide calendar";
} else {
document.getElementById("calendar").style.display = 'none';
$(".icon-chevron-up").removeClass("icon-chevron-up").addClass("icon-chevron-down");
document.getElementById("label").innerText = "Show calendar";
}
}
我想只更改标签的一部分,因为我不想删除引导程序图标。像这儿: http://jsfiddle.net/RkaQD/2/
您是否有任何提示如何应对这些消失的引导图标?
编辑:
也许我会写一些我想要的例子:
v'显示日历'
^'隐藏日历'
v'显示日历'
^'隐藏日历'
依旧......
答案 0 :(得分:2)
我认为它是innerHTML而不是innerText。
答案 1 :(得分:1)
您面临的问题是因为您正在使用ID标签更改元素的内部文本....此标签除了文本外还有两个图标元素。
我所做的是将文本“隐藏日历”和“显示日历”放入带有ID的范围,然后更改范围的内部文本(而不是标签) 所以没有:
<i class="icon-chevron-down"></i>
Show calendar
<i class="icon-calendar"></i>
你必须
<i class="icon-chevron-down"></i>
<span id="display_text">Show calendar</span>
<i class="icon-calendar"></i>
从
更改JavaScript上的2行document.getElementById("label").innerText = "Hide calendar";
document.getElementById("label").innerText = "Show calendar";
到
document.getElementById("display_text").innerText = "Hide calendar";
document.getElementById("display_text").innerText = "Show calendar";
希望这会有所帮助。