function main()
{
console.log("document ready, Javascript running");
$(".openmenu_container").mouseover(function (){
console.log("mouseover triggered");
$(".sidebar").css("left","0px");
$(".openmenu_container").css("left","-200px");); //Uncaught SyntaxError: Unexpected token )
$(".sidebar").mouseleave(function (){
console.log("mouseleave triggered");
$(".sidebar").css("left","-200px");
$(".openmenu_container").css("left","40px");});
}}
$(document).ready(main);
我的网站上已经有了一个功能侧边栏,使用.click()函数。我想做到这一点,鼠标悬停在“打开菜单”按钮就足以打开菜单了,一旦打开菜单,如果用户将鼠标移出菜单div,菜单就会自动关闭。 / p>
错误消息是唯一记录到控制台的消息,这意味着我的代码甚至都没有运行。错误chrome给我,“Uncaught SyntaxError:Unexpected token”“没有任何意义,因为完成.mouseover()需要第二个')'。我究竟做错了什么?我是否需要.mouseover的第二个参数?
JSFiddle:http://jsfiddle.net/dsghfnrd/2/
答案 0 :(得分:0)
您尚未关闭)
和}
。
在这一行:
$(".openmenu_container").css("left", "-200px"););
您错过了}
,必须关闭mouseover event
。
然后在侧边栏事件处理程序下方,您有一个额外的}
。
因此,您更正的代码如下:
function main() {
console.log("document ready, Javascript running");
$(".openmenu_container").mouseover(function () {
console.log("mouseover triggered");
$(".sidebar").css("left", "0px");
$(".openmenu_container").css("left", "-200px"); //Uncaught SyntaxError: Unexpected token )
});
$(".sidebar").mouseleave(function () {
console.log("mouseleave triggered");
$(".sidebar").css("left", "-200px");
$(".openmenu_container").css("left", "40px");
});
}
$(document).ready(main);
另外,希望您想mouseleave
sidebar
mouseover
事件openmenu_container.
{{1}}事件上的{{1}}事件。
答案 1 :(得分:0)
function main() {
console.log("document ready, Javascript running");
$(".openmenu_container").mouseover(function () {
console.log("mouseover triggered");
$(".sidebar").css("left", "0px");
$(".openmenu_container").css("left", "-200px");
});//add this
$(".sidebar").mouseleave(function () {
console.log("mouseleave triggered");
$(".sidebar").css("left", "-200px");
$(".openmenu_container").css("left", "40px");
});
}
$(document).ready(main);
答案 2 :(得分:0)
下面的代码将起作用。你可以使用一个突出显示语法的编辑器!
function main()
{
console.log("document ready, Javascript running");
$(".openmenu_container").mouseover(function (){
//console.log("mouseover triggered");
$(".sidebar").css("left","0px");
$(".openmenu_container").css(
"left","-200px"
); //Uncaught SyntaxError: Unexpected token )
$(".sidebar").mouseleave(function (){
//console.log("mouseleave triggered");
$(".sidebar").css("left","-200px");
$(".openmenu_container").css("left","40px");
});
});
};
$(document).ready(main);
修改强> @ mohamedrias的答案显示了更好的代码分析
答案 3 :(得分:0)
尝试这样的事情......
$(document).ready(function() {
console.log("document ready, Javascript running");
$(".openmenu_container").mouseover(function () {
console.log("mouseover triggered");
$(".sidebar").css("left", "0px");
$(".openmenu_container").css("left", "-200px");
});//add this
$(".sidebar").mouseleave(function () {
console.log("mouseleave triggered");
$(".sidebar").css("left", "-200px");
$(".openmenu_container").css("left", "40px");
});
});