我希望在文档加载功能的menu1上触发我的click事件。由于我在该菜单上有许多功能,我将其分配给变量。并在该变量上调用click事件。但它不起作用。
$(document).ready(function () {
var $menuone = $('#menu1');
var $menutwo = $('#menu2');
var $menuthree = $('#menu3');
var $menufour = $('#menu4');
$menuone.trigger("click");
$("#menuone").click(function () {
$("#frm1").show();
$("#frm3").hide();
$("#frm4").hide();
$("#frm2").hide();
$(this).css({
border: "2px solid #A69A8F",
"border-bottom-width": "0",
background: "#F7F7F7",
color: "#0D638B;"
});
$(this).children().css({
color: "#0D638B",
"font-weight": "bold"
});
});
$menutwo.click(function () {
$menuone.removeAttr('style');
$menuone.children().removeAttr('style');
$("#frm1").hide();
$("#frm3").hide();
$("#frm4").hide();
$("#frm2").show();
$(this).css({
border: "2px solid #A69A8F",
"border-bottom-width": "0",
background: "#F7F7F7",
color: "#0D638B;"
});
$(this).children().css({
color: "#0D638B",
"font-weight": "bold"
});
});
});
答案 0 :(得分:4)
浏览器逐行运行JavaScript。因此,您触发点击时不会附加$(“#menuone”)。click的绑定。
<强>解决方案:强>
$( document ).ready(function() {
var $menuone = $('#menu1');
var $menutwo = $('#menu2');
var $menuthree = $('#menu3');
var $menufour = $('#menu4');
$("#menuone").click(function () {
$("#frm1").show();
$("#frm3").hide();
$("#frm4").hide();
$("#frm2").hide();
$(this).css({border:"2px solid #A69A8F","border-bottom-width":"0", background: "#F7F7F7",color:"#0D638B;"});
$( this ).children().css({color: "#0D638B","font-weight":"bold"} );
});
$menutwo.click(function () {
$menuone.removeAttr( 'style' );$menuone.children().removeAttr( 'style' );
$("#frm1").hide();
$("#frm3").hide();
$("#frm4").hide();
$("#frm2").show();
$(this).css({border:"2px solid #A69A8F","border-bottom-width":"0", background: "#F7F7F7",color:"#0D638B;"});
$( this ).children().css({color: "#0D638B","font-weight":"bold"} );
});
// Put it here
$menuone.trigger("click");
});
顺便说一句,$menuone
不是$("#menuone")
而是$("#menu1")
,我猜测这是一个错字?