我正在尝试运行以下代码:
$(document).ready({
$("#menu-nav a").hover(
function () {
$(this).css ( marginRight: '20px' );
},
function () {
$(this).css ( marginRight: '10px' );
}
);
}); //end ready
但是,我的Dreamweaver会在$("#menu-nav a").hover(
行上报告错误。可以将选择器用作#menu-nav a
,还是应该是其他东西?
答案 0 :(得分:3)
问题在于:
$(document).ready({
你需要这个:
$(document).ready(function () {
我相信你知道这一点,但很容易被忽视,因为错误显示在下一行。
另一个问题:
我认为你也会遇到问题:
$(this).css ( marginRight: '20px' );
根据jQuery docs,你应该使用这个:
$(this).css ('margin-right', '20px');
替代方案:
这是另外一件事,只是为了给出一个完整的答案。正如评论中所指出的,如果你不想使用它,你真的根本不需要jQuery。试试这个:
#menu-nav a:hover { margin-right: 20px; }
你可以添加你想要的任何样式。
答案 1 :(得分:3)
在你的例子中
$(document).ready({...});
应该是
$(document).ready(function(){
//...
});
并且还要改变
$(this).css ( marginRight: '20px' );
到
$(this).css('marginRight','20px');
或
$(this).css({'marginRight':'20px'});
两行
答案 2 :(得分:2)
您没有传递对象,因此您无法使用property: value
,您可以编码:
$(this).css({ marginRight: '20px'});
或:
$(this).css( 'marginRight', '20px' );
答案 3 :(得分:0)
我使用这个约定来避免在无数括号和括号中迷失和混淆:
$(document).ready(DocReady);
function DocReady()
{
// More code here
}
一个优点是你也可以通过点击按钮调用DocReady函数(也许是为了测试它)。