所以我搜索了周圍並編輯了我找到的顯示/隱藏jquery代碼,它工作得很好,除非在點擊它時html img屬性不會被替換。jQuery隱藏和顯示Attr Src圖像不按預期切換
我的jQuery代碼:
<script>
$(document).ready(function() {
var button = $('#hideButton');
//check the cookie when the page loads
if ($.cookie('currentToggle') === 'hidden') {
togglePanel(button, false);
}
else {
togglePanel(button, true);
}
//handle the clicking of the show/hide toggle button
button.click(function() {
//toggle the panel as required, base on current state
if (button.attr('src') === "images/expand.gif") {
togglePanel($(this), true);
}
else {
togglePanel($(this), false);
}
});
});
function togglePanel(button, show) {
var panel = $('#panel');
if (show) {
panel.removeClass('hidden');
button.attr('src','images/collapse.gif');
$.cookie('currentToggle', '', { path: '/' });
}
else {
panel.addClass('hidden');
button.attr('src','images/expand.gif');
$.cookie('currentToggle', 'hidden', { path: '/' });
}
}
</script>
我的HTML代碼:
<a id="hideButton" href="#"><img src="images/collapse.gif"></a>
<div id="panel">
<p>
Test
</p>
</div>
當我看着我的螢火控制檯,它顯示了A HREF src屬性改變,像這樣 「<a ... src="extend.gif">
」,而不是實際的「<img src="">
」元素本身。我該如何解決?謝謝。
你這樣做了艱辛的道路。 UI元素應該使用CSS背景,而不是內嵌圖像。然後你可以簡單地通過交換CSS類名來改變圖像。 –
正如我之前所說,並且會再說一遍,不要只是複製和粘貼別人的代碼。即使你編輯它,你也不會明白他想要實現什麼。研究代碼並寫下你需要的元素。 – nkmol
感謝提示Diodeus,我會這樣做。 – Momololo