延迟JS直到ng-view元素已加载到DOM中

时间:2014-07-11 19:39:02

标签: javascript jquery html angularjs

我正在尝试进行表单验证,但是一旦我将表单粘贴到ng-view并使用ngroute,DOM元素会稍微延迟,我的脚本在运行时无法找到该元素。

我不想做像setInterval

这样的hacky

我有这样的事情:

validateform.ready = function() {

$valForm   = $('.ui.basic.login-register.segment .ui.form.segment');
  $.fn.form.settings.defaults = {
    firstName: {
      identifier  : 'first_name',
      rules: [
        {
          type   : 'empty',
          prompt : 'Please enter your first name'
        }
      ]
    },
  ... // More validation code
  $valForm
    .form({}, {
      inline : true,
      on: 'blur'
    });

  $('.ui.dropdown')
      .dropdown();

  $('.ui.accordion')
      .accordion();
};

然后我拨打$(document).ready(validateform.ready);,但显然在ng-view正在播放时太早了。

我的理解是因为ready事件发生,然后Angular执行其路由并注入ng-view

如何在元素存在后确保加载此代码?

0 个答案:

没有答案