运行 jquery 另一个函数完成后的函数
Run jquery function after another function completes
我想在另一个自定义函数完成后执行自定义 Jquery 函数
我使用定时器来 func2。这不是正确的解决方案。
怎么写?
function fun1() {
$('#sideNavBox .root.static > li.static').each(function(){
if($(this).find('ul').length){
$(this).addClass('remove');}
$('#sideNavBox .root.static > li.remove > a').replaceWith(function(){
return $('<span class="additional-background ms-navedit-flyoutArrow">'+$(this).html()+'</span>' );
});
});
};
setTimeout(
function fun2() {
$('#sideNavBox .root.static > li.father > span').removeClass('additional-background ms-navedit-flyoutArrow');
$('#sideNavBox .root.static > li.father > span').addClass('static menu-item ms-core-listMenu-item ms-displayInline ms-navedit-linkNode');
//do something special
}, 1000);
定义函数 2 并在函数 1 结束时在函数 1 中调用它怎么样?
function fun1() {
$('#sideNavBox .root.static > li.static').each(function(){
if($(this).find('ul').length){
$(this).addClass('remove');}
$('#sideNavBox .root.static > li.remove > a').replaceWith(function(){
return $('<span class="additional-background ms-navedit-flyoutArrow">'+$(this).html()+'</span>' );
});
});
//calling function 2 here
fun2();
};
为什么不直接在 fun1 的末尾调用 fun2 呢?
function fun2() {
$('#sideNavBox .root.static > li.father > span').removeClass('additional-background ms-navedit-flyoutArrow');
$('#sideNavBox .root.static > li.father > span').addClass('static menu-item ms-core-listMenu-item ms-displayInline ms-navedit-linkNode');
//do something special
}
function fun1() {
$('#sideNavBox .root.static > li.static').each(function() {
if ($(this).find('ul').length) {
$(this).addClass('remove');
}
$('#sideNavBox .root.static > li.remove > a').replaceWith(function() {
return $('<span class="additional-background ms-navedit-flyoutArrow">' + $(this).html() + '</span>');
});
});
fun2();//Call the fun2
}
您在 fun1() 中调用 fun2()
像这样
function fun2() {
$('#sideNavBox .root.static > li.father > span').removeClass('additional-background ms-navedit-flyoutArrow');
$('#sideNavBox .root.static > li.father > span').addClass('static menu-item ms-core-listMenu-item ms-displayInline ms-navedit-linkNode');
//do something special
}
function fun1() {
$('#sideNavBox .root.static > li.static').each(function(){
if($(this).find('ul').length){
$(this).addClass('remove');}
$('#sideNavBox .root.static > li.remove > a').replaceWith(function(){
return $('<span class="additional-background ms-navedit-flyoutArrow">'+$(this).html()+'</span>' );
});
});
fun2() ;//Call function 2
}
我想在另一个自定义函数完成后执行自定义 Jquery 函数 我使用定时器来 func2。这不是正确的解决方案。 怎么写?
function fun1() {
$('#sideNavBox .root.static > li.static').each(function(){
if($(this).find('ul').length){
$(this).addClass('remove');}
$('#sideNavBox .root.static > li.remove > a').replaceWith(function(){
return $('<span class="additional-background ms-navedit-flyoutArrow">'+$(this).html()+'</span>' );
});
});
};
setTimeout(
function fun2() {
$('#sideNavBox .root.static > li.father > span').removeClass('additional-background ms-navedit-flyoutArrow');
$('#sideNavBox .root.static > li.father > span').addClass('static menu-item ms-core-listMenu-item ms-displayInline ms-navedit-linkNode');
//do something special
}, 1000);
定义函数 2 并在函数 1 结束时在函数 1 中调用它怎么样?
function fun1() {
$('#sideNavBox .root.static > li.static').each(function(){
if($(this).find('ul').length){
$(this).addClass('remove');}
$('#sideNavBox .root.static > li.remove > a').replaceWith(function(){
return $('<span class="additional-background ms-navedit-flyoutArrow">'+$(this).html()+'</span>' );
});
});
//calling function 2 here
fun2();
};
为什么不直接在 fun1 的末尾调用 fun2 呢?
function fun2() {
$('#sideNavBox .root.static > li.father > span').removeClass('additional-background ms-navedit-flyoutArrow');
$('#sideNavBox .root.static > li.father > span').addClass('static menu-item ms-core-listMenu-item ms-displayInline ms-navedit-linkNode');
//do something special
}
function fun1() {
$('#sideNavBox .root.static > li.static').each(function() {
if ($(this).find('ul').length) {
$(this).addClass('remove');
}
$('#sideNavBox .root.static > li.remove > a').replaceWith(function() {
return $('<span class="additional-background ms-navedit-flyoutArrow">' + $(this).html() + '</span>');
});
});
fun2();//Call the fun2
}
您在 fun1() 中调用 fun2()
像这样
function fun2() {
$('#sideNavBox .root.static > li.father > span').removeClass('additional-background ms-navedit-flyoutArrow');
$('#sideNavBox .root.static > li.father > span').addClass('static menu-item ms-core-listMenu-item ms-displayInline ms-navedit-linkNode');
//do something special
}
function fun1() {
$('#sideNavBox .root.static > li.static').each(function(){
if($(this).find('ul').length){
$(this).addClass('remove');}
$('#sideNavBox .root.static > li.remove > a').replaceWith(function(){
return $('<span class="additional-background ms-navedit-flyoutArrow">'+$(this).html()+'</span>' );
});
});
fun2() ;//Call function 2
}