当页面加载时,如何在页面的某个部分生成单击?

时间:2011-01-09 19:15:37

标签: javascript

基本上我希望在访问者加载页面时点击我页面上的某个位置。我希望这一次点击发生,用户甚至不点击。有可能吗?

4 个答案:

答案 0 :(得分:2)

<script type="text/javascript">    
   $(document).ready( function() {

      // target represents the id of the element you are wanting to be clicked.
      $('#target').click(function() {
         // your click handler logic goes here
      });

      // click the element for the user...
      $('#target').click();

   });
</script>


<div id="target">This is the element on the page that will be clicked on pageload</div>

UPDATE:这是使用JQuery,它是一个JavaScript库。如果您还没有使用它,可以使用脚本标签在HEAD部分导入JQuery:

  <head>
    ...
    <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>
    ...
  </head>

http://jquery.com/

使用JavaScript库(例如JQuery)将确保此功能可跨浏览器运行。

答案 1 :(得分:2)

如果您想在不使用JavaScript库的情况下达到相同目的,可以使用以下代码:

<script type="text/javascript">
window.onload=function(){ //when the window loads
  var paragraph = document.getElementById("google"); //store the object into a
  // variable

  //set the functions that will fireup when click happens - not necessary - 
  //for example purposes
  paragraph.onclick = function(){ 
    this.style.background="red";
  }

  paragraph.onclick(); //simulate click
}
</script>

<p id="google">Google text</p>

演示: http://jsfiddle.net/9azTR/2/

答案 2 :(得分:0)

您可以在DOM准备好的情况下触发指定的事件。你可以使用jQuery ...

    $(document).ready(function(){
        $('#clickme').bind('click', function() {
            alert('Here goes code you would like to perform');
            alert('And another pieco of code, if you wish');
        });
        $('#clickme').trigger('click');
    });

答案 3 :(得分:0)

同意@Felix Kling。如果您尝试模拟对象上用户的单击,则可以调用该函数。

但是从问题的措辞来看,听起来您想要模拟广告上的点击以在您的网站上产生收入?如果是这样,DOM将不允许您访问另一个包含框架(例​​如iframe) - 这是安全违规。

如果你想这样做,你必须以某种方式通过ActiveX控件或其他恶意手段劫持用户的鼠标,这当然是不择手段的。