Javascript 在同位素OnlyLayout中定义/调用函数

Javascript 在同位素OnlyLayout中定义/调用函数,javascript,jquery,jquery-isotope,Javascript,Jquery,Jquery Isotope,我正在使用,上面写着: 与回调类似,onLayout是一个函数,每次同位素实例运行其布局逻辑后都会触发它 这意味着当“布局”完成后,我可以运行以下操作: $elems.css({ background: 'blue' }); $("#container").width(); $("#head").animate({ width: newWidth}, "fast"); 我没有“$elems”,但从我的理解来看,这意味着当“onLayout”完成后,我可以运行我想要的,我想运行这个: $

我正在使用,上面写着:

与回调类似,onLayout是一个函数,每次同位素实例运行其布局逻辑后都会触发它

这意味着当“布局”完成后,我可以运行以下操作:

 $elems.css({ background: 'blue' });
$("#container").width(); 
$("#head").animate({ width: newWidth}, "fast");
我没有“$elems”,但从我的理解来看,这意味着当“onLayout”完成后,我可以运行我想要的,我想运行这个:

 $elems.css({ background: 'blue' });
$("#container").width(); 
$("#head").animate({ width: newWidth}, "fast");
但是“()”中的“$elems”是如何和什么


谢谢

您可以将自定义事件绑定到如下元素:

$('#container').bind('my_event', function ()
{
    alert('my_event has just fired!');
});
然后用
.trigger()
调用它:

我认为,使用这个,你应该能够很容易地设置你想要的东西


更新:

不要调用此代码:

$('#container').isotope({
   onLayout: function( $elems ) {
    // `this` refers to jQuery object of the container element
    console.log( this.height() );
    // callback provides jQuery object of laid-out item elements
    $elems.css({ background: 'blue' });
    }
});
称之为:

$('#container').isotope({
   onLayout: function( $elems ) {
        // `this` refers to jQuery object of the container element
        console.log( this.height() );
        // callback provides jQuery object of laid-out item elements
        $elems.css({ background: 'blue' });
        $("#container").width(); 
        $("#head").animate({ width: newWidth}, "fast");
    }
});

可以将自定义事件绑定到元素上,如下所示:

$('#container').bind('my_event', function ()
{
    alert('my_event has just fired!');
});
然后用
.trigger()
调用它:

我认为,使用这个,你应该能够很容易地设置你想要的东西


更新:

不要调用此代码:

$('#container').isotope({
   onLayout: function( $elems ) {
    // `this` refers to jQuery object of the container element
    console.log( this.height() );
    // callback provides jQuery object of laid-out item elements
    $elems.css({ background: 'blue' });
    }
});
称之为:

$('#container').isotope({
   onLayout: function( $elems ) {
        // `this` refers to jQuery object of the container element
        console.log( this.height() );
        // callback provides jQuery object of laid-out item elements
        $elems.css({ background: 'blue' });
        $("#container").width(); 
        $("#head").animate({ width: newWidth}, "fast");
    }
});

我不明白你想做什么。您是否正在尝试定义一个
onLayout
函数,您也可以在其他时间调用该函数?如果是,你还想什么时候打电话?如果没有,请详细描述你想做什么。我不明白你想做什么。您是否正在尝试定义一个
onLayout
函数,您也可以在其他时间调用该函数?如果是,你还想什么时候打电话?如果没有,请更详细地描述你想要做什么。我需要在这个onLayout:function($elems){如示例所示,
$elems
是传递到函数中的一组项。据猜测,它将是按同位素重新排序的元素(很可能是)。至于如何做,好吧,这些是选项,因此它们是要编辑的。只需将它添加到
onLayout
函数中,紧跟在
$elems.css({background:'blue'});
之后,在下一个
}
之前,好吧,那么$elems是我的“.box”,在我的情况下(问题中没有显示),我明白了,所以它不是真正的回调,因为我需要运行的代码与我的“.box”(例如$elems)无关。正确吗?不一定-您可以在
onLayout
中执行任何操作,它不必只执行与
$elems
一起工作的操作。这只是传递进来的,因为该函数的另一部分需要它们。该函数的主要目的是在每次布局更改时执行一些代码-如果此时您需要运行额外的位,它应该放在该函数中。呵呵,它总是简单的:)只要确保最后一个位后面没有逗号-我需要在这个onLayout之后运行我的位:function($elems){如示例saysOK所示,
$elems
是传递到函数中的一组项。据猜测,它将是按同位素重新排序的元素(很可能是)。至于如何做,好吧,这些都是选项,所以它们是要被编辑的。只需将它添加到
onLayout
函数中,紧跟在
$elems.css({background:'blue'});
之后,在下一个
}
确定之前,那么$elems就是我的“.box”(问题中未显示)我明白了,所以这不是真正的回调,因为我需要运行的代码与我的“.box”(例如$elems)无关。正确吗?不一定-您可以在
onLayout
中执行任何操作,它不必只执行与
$elems
一起工作的操作。这只是传入的,因为该函数的另一部分需要它们。该函数的主要目的是在每次更改布局时执行一些代码-如果您需要运行额外的一位,应该放在那个函数中。呵呵,总是简单的:)只要确保最后一个后面没有逗号就行了-