触发onload,内联javascript事件

时间:2017-01-10 13:45:08

标签: javascript triggers inline

我有一个可以通过链接调用的弹出窗口。问题是我需要把它称为onload,我找不到办法做到这一点。

这是弹出窗口的代码

   <a href="https://sloways.leadpages.co/leadbox/14169a873f72a2%3A14f192411746dc/5636318331666432/"
    target="_blank">Click Here to Subscribe</a>
    <script data-leadbox="14169a873f72a2:14f192411746dc"
    data-url="https://sloways.leadpages.co/leadbox/14169a873f72a2%3A14f192411746dc/5636318331666432/"
    data-config="%7B%7D" type="text/javascript"
    src="https://sloways.leadpages.co/leadbox-1483020619.js">
    </script> 

我试图以不同的方式触发“点击此处订阅”,如下所示,但没有成功:

  1. Jquery how to trigger click event on href element
  2. jQuery的(文件)。就绪(函数(){
     jQuery的( “#add_redirect”)触发( '点击')。 });
  3. Window.location.href(这打开链接,但在另一个页面中,而不是弹出窗口)
  4. 更新N.1
    我已经绕过了通过<object>标记加载弹出网址的问题。 我把<object>放在一个Bootstrap模态中,所以它仍然可以像某种弹出窗口一样工作。

3 个答案:

答案 0 :(得分:1)

<html>
<head>
<script data-leadbox="14169a873f72a2:14f192411746dc"
    data-url="https://sloways.leadpages.co/leadbox/14169a873f72a2%3A14f192411746dc/5636318331666432/"
    data-config="%7B%7D" type="text/javascript"
    src="https://sloways.leadpages.co/leadbox-1483020619.js"></script>
<script>
var displayPopup = function(){
 var element = document.getElementById('popUp');
 element.click();
}
</script>
</head>
<body onload="displayPopup();">
  <a href="https://sloways.leadpages.co/leadbox/14169a873f72a2%3A14f192411746dc/5636318331666432/" id="popUp"
    target="_blank">Click Here to Subscribe</a> 
</body>
</html>

我正在使用计划JS。当body JS对象完全形成时,换句话说,当主体的内容被完全加载时,onLoad事件被触发。我将displayPopup函数连接到此事件。

displayPopup函数中,我检索锚标记并手动点击它。

答案 1 :(得分:0)

使用以下代码

jQuery=jQuery.noConflict();
jQuery(document).ready(function(e){
   e.preventDefault();
   jQuery("#add_redirect").click(); 
});

答案 2 :(得分:0)

如果您在页面上加载了jQuery,@ Prashanth Reddy的解决方案应该可以正常工作。

对于使用普通javascript的简单实现,您需要将标记上的target属性从'_blank'更改为'_self'。这将打开现有页面中的弹出窗口,而不是新页面。

然后在html的正文部分末尾添加以下内容:

<script>
  (function() {
    document.getElementById('add_redirect').click();
  })();
</script>

请点击此处查看工作示例:jsfiddle

如果要避免使用内联脚本标记,则需要在javascript代码中添加事件侦听器。这是一个很好的起点,如何做到这一点:

plain js equivalent to jquery $.ready