發送我有一個手風琴的功能是這樣的:的JavaScript +微分用戶點擊和點擊的功能
$("#notaccordion").addClass("ui-accordion ui-widget ui-helper-reset")
.find("h3")
.addClass("ui-accordion-header ui-helper-reset ui-state-default ui-corner-top ui-corner-bottom")
.prepend('<span class="ui-icon ui-icon-triangle-1-e"/>')
.click(function() {
$(this).toggleClass("ui-accordion-header-active").toggleClass("ui-state-active")
.toggleClass("ui-state-default").toggleClass("ui-corner-bottom")
.find("> .ui-icon").toggleClass("ui-icon-triangle-1-e").toggleClass("ui-icon-triangle-1-s");
if ($(this).next().is(':hidden') == true) {
;
$(this).addClass('active'); $(this).next().slideDown('normal');
}
else {
$(this).removeClass('active'); $(this).next().slideUp('normal');
}
//.end().next().slideUp('normal');
return false;
})
.next().addClass("ui-accordion-content ui-helper-reset ui-widget-content ui-corner-bottom").hide();
和點擊所有的面板功能擴展所有面板一次:
function clickAllPanels() {
var elm = document.getElementsByTagName('table');
var i = elm.length; while (i--) {
clickItem(elm[i]);
}
}
function clickItem(divObj) {
if (divObj.click) {
divObj.click();
} else if (document.createEvent) {
var evt = document.createEvent("MouseEvents");
evt.initMouseEvent("click", true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
var allowDefault = divObj.dispatchEvent(evt);
}
}
哪有我讓手風琴.click(function()
函數知道它是clickAllPanels
,它發送'點擊'而不是用戶的物理點擊。我需要這樣做,因爲如果從clickAllPanels
開始,我想更改幻燈片的上下邏輯。
是沒可能打開所有的面板沒有模擬點擊? –