将javascript应用于动态添加的元素

时间:2014-11-24 15:22:22

标签: javascript jquery dynamic

我已经搜索过其他文章和jQuery文档,但还没有找到(或理解)我需要的解决方案。

我在网站上使用其他在线服务共享按钮。该过程是添加一段HTML(使用特定的类名称关闭)并包含对其Javascript文件的调用。

<div class="specific_class_name"></div>

<script type="text/javascript" src="path to script.js#pubid=my-account-id" async="async"></script>

这适用于我有权编辑HTML并包含脚本的页面。

我的挑战是如何在我 有权运行Javascript而不包含特定HTML的页面上包含“共享”按钮。我可以使用jQuery .append添加封闭元素并包含Javascript调用,但这不能按需要运行。如果我在完全加载后检查页面,我会看到动态元素已正确添加并且脚本已被调用。查看页面源,不存在。

当然,我无法编辑此服务的脚本。我需要被调用的脚本在页面加载期间或之后查找动态元素,而不是跟随任何用户/鼠标操作。

感谢您的反馈。

2 个答案:

答案 0 :(得分:1)

创建div,然后使用getScript命令将其包括在内:

$(window).on('load', function(){
  $('<div class="class_name"></div>').appendTo("someIDyouhave");
  $.getScript('path to script.js#pubid=my-account-id');
});

http://api.jquery.com/jquery.getscript/

答案 1 :(得分:0)

你尝试过这样的事吗?附加元素,然后添加单击事件?

$(function() {
  var appendedElement = $('<div id="myID"></div>')
  $('.specific_class_name').append(appendedElement).on('click', '#myID', function(){
    whatever();
  });
});

这应该有效。