相关疑难解决方法(0)

如何在jQuery中触发$().ready()?

使用jQuery,有没有办法document.ready在页面加载后的某个时刻重新触发触发器?

更新:jQuery一旦运行就会脱掉它们.在我的实验中,看起来jQuery会在触发().ready初始ready事件后遇到回调时立即运行回调.

jquery

13
推荐指数
2
解决办法
3万
查看次数

Angular External js库调用Document.Ready

在我的.net核心asp角度应用程序中使用第三方js库.该库在$(document).ready方法中应用它的逻辑.所以我有一个问题,即库不能正确应用角度路由更改,因为$(document).ready方法不会触发.

我在angular-cli脚本部分引用了外部js库.

我打开了第三方js文件,并为其添加了一个方法,该方法调用与文档准备好相同的逻辑.我只是在努力寻找一种从我的angular typescript组件中调用该方法的方法.

我已经创建了一个简单的剪切js文件来测试它并简化问题.我有以下Tester.js,它在我的-angular-cli.json中在scripts标签下引用:

(function ($) {
    "use strict";

    $(document).ready(function () {        
        CallMe();
    });

    function CallMe(){
         console.log('HEY I GOT CALLED');
    }

 })(jQuery);
Run Code Online (Sandbox Code Playgroud)

我希望能够从ts组件文件内部调用CallMe()方法.CallMe()会在document.ready事件中按预期触发一次,但我需要弄清楚如何在我的ts脚本中调用此ad hoc.

有任何想法吗?

javascript jquery typescript angular

10
推荐指数
1
解决办法
606
查看次数

在AJAX重新加载后重写就绪事件

我研究了其他线程,我只是感到困惑.

情况:我正在提供一个通用的jQuery插件,用于加载用户通过AJAX动态指定的div.一切正常,但在一个用户的页面上,有一段未被调用的JS,因为"就绪"事件没有被激活.

通常情况是用户的其他jQuery内容将放在jQuery(document).ready之后.

我刚刚测试过:

$(document).trigger('ready');
Run Code Online (Sandbox Code Playgroud)

手动 - 它完全没有效果,因为我认为"就绪"只被调用一次而且只被调用一次.

处理它的正确方法是什么?(提供最通用的解决方案会很棒)

我喜欢做这个帖子中建议的事情:

触发$ document.ready(所以我执行的AJAX代码无法修改)

但我认为readyList现在是私有的,不能再被直接操作了?

值得一提的是,我提供的插件为用户提供了回调功能.当然,他可以在那里放置后加载处理JS代码.

在此先感谢您的亲切问候

jquery

8
推荐指数
2
解决办法
4万
查看次数

$(document).ready()没有为加载ajax的内容执行

可能有什么理由不在返回的部分页面中执行document.ready?它工作正常2次,但在第3次更新html后没有任何反应:

alert(html);
alert($(PopUpItem));
$(PopUpItem).html(html);
alert('in set popup html completed'); 
Run Code Online (Sandbox Code Playgroud)

我已执行所有警报,PopupItem和html具有正确的值.我使用JQuery通过$ .post执行服务器调用.

另外,如果发生某些语法错误,我可以使用错误处理程序来捕获吗?

jquery

6
推荐指数
1
解决办法
2万
查看次数

通过ajax注入html,RE-RUN document.ready()jqueries,IS可能吗?

here is my case:

    <html>
    <body>
    <head>
    ...
    <script>
 $(function(){
        $('.do-tip').qtip({
            content: 'This is a tip of active hovered element',
            show: 'mouseover',
            hide: 'mouseout',
  })
 });
    </script>
    </head>
    <body>
    <a href="http://www.google.com" class="do-tip">google</a>

    <input type="button" value="load div by ajax" />
    <div> <!-- this div loaded by ajax -->
    <div>
    <a href="http://www.yahoo.com" class="do-tip">yahoo</a> <!-- HOW TO HERE, run the existing script only for this part, JQUERY UNCLE must have a solution-->
    </body>
    </html>

any ideas?
Run Code Online (Sandbox Code Playgroud)

ajax jquery document-ready

2
推荐指数
1
解决办法
4123
查看次数

标签 统计

jquery ×5

ajax ×1

angular ×1

document-ready ×1

javascript ×1

typescript ×1