我想将鼠标悬停事件中的以下javascript调整为页面加载事件,但是我的尝试到目前为止都失败了。所以澄清一下,当页面加载时我希望脚本激活。这是代码:
$(function() {
$('#sdt_menu2 > li').bind('mouseenter',function(){
var $elem = $(this);
$elem.find('img')
.stop(true)
.andSelf()
.find('.sdt_wrap')
.stop(true)
.andSelf()
.find('.sdt_active')
.stop(true)
.animate({'height':'45px'},300,function(){
var $sub_menu = $elem.find('.sdt_box');
if($sub_menu.length){
}
});
答案 0 :(得分:1)
如果我理解问题是正确的,那就像
一样简单$(function(){
var $elem = $(this);
$elem.find('img')
.stop(true)
.andSelf()
.find('.sdt_wrap')
.stop(true)
.andSelf()
.find('.sdt_active')
.stop(true)
.animate({'height':'45px'},300,function(){
var $sub_menu = $elem.find('.sdt_box');
if($sub_menu.length){
}
});
$(handler)
(您已经使用过)实际上是$(document).ready(handler)
的快捷方式
来自jQuery Documentation on .ready()
:
以下所有三种语法都是等效的:
$(document).ready(handler)
$()。ready(处理程序)(不建议这样做)
$(处理程序)
[编辑]:如果该函数仍然可以在$('#sdt_menu2 > li')
上运行,那么$elem
(这甚至是一个有效的名称?Oo)当然必须设置为该值。如果这就是你想要的,替换
var $elem = $(this);
通过
var $elem = $('#sdt_menu2 > li')`