Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/472.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 我可以为<;设置onClick()事件吗;h1>;至<;h6>;标签?_Javascript_Html_Onclick - Fatal编程技术网

Javascript 我可以为<;设置onClick()事件吗;h1>;至<;h6>;标签?

Javascript 我可以为<;设置onClick()事件吗;h1>;至<;h6>;标签?,javascript,html,onclick,Javascript,Html,Onclick,我想在上设置onClick()事件,以运行一些javascript。请给我举一些例子,说明在中有onClick()事件,它显示了一些alert()消息 谢谢:)它被称为内联事件注册模型。是的,你可以或多或少地满足你的要求 但请不要这样做。 是的,它既古老又可靠。但缺点是它需要将JS行为放入XHTML结构中 您最好使用以下习惯用法: element.onclick = doSomething; 在jQuery中,这可能类似于: $(":header").click(function(){

我想在
上设置onClick()事件,以运行一些javascript。请给我举一些例子,说明在
中有onClick()事件,它显示了一些alert()消息


谢谢:)

它被称为内联事件注册模型。是的,你可以或多或少地满足你的要求

但请不要这样做。

是的,它既古老又可靠。但缺点是它需要将JS行为放入XHTML结构中

您最好使用以下习惯用法:

element.onclick = doSomething;
在jQuery中,这可能类似于:

  $(":header").click(function(){
     alert('Handler for .click() called.')
   });

祝你好运

如果您愿意使用jQuery,它很容易处理

$('h1, h2, h3, h4, h5, h6').click(function(){
    //do something on click
});
如果您希望在每个级别的标头上使用不同的函数,您也可以轻松做到这一点:

$('h1').click(function(){
    //do something on click
});

$('h2').click(function(){
    //do something on click
});

//Etc.

如果您不想使用像jQuery这样的库,这里有一种处理方法:

var tags = ['h1','h2','h3','h4','h5','h6'];

for( var i in tags ){
    var these = document.getElementsByTagName(tags[i]);
    if( these.length ){
        for( var n=0,m=these.length;n<m;n++ ){
          these[n].addEventListener('click',function(){ 
            alert('hello'); 
          },false);
        }  
    }
}
感谢@Kobi的评论,更简洁的是
:header

$(':header').click( function(){...} );

我建议您选择一个库,让这类事情变得更容易。

代码:

<script>
    function handleOnClick() {
    alert("Clicked on h1 tag");
  }
</script>

<h1 onclick="handleOnClick()">
  I am h1 tag
</h1>

函数handleOnClick(){
警报(“点击h1标签”);
}
我是h1标签

使用'function'关键字创建function(),任何逻辑代码都会出现在脚本标记中

<html>
        <head> 
            <title>Understanding Tags in JS </title>
        </head>
        <body>
            <h1> Welcome to JavaScript Tutorial </h1>
            <h2 id = 'h2tag' onclick = "clickedMe()"> Click me to change </h2>
            <script>
                function clickedMe() {
                document.getElementById('h2tag').innerHTML = 'Alas ! I am clicked!'
            }
            </script>
        </body>
    </html>

理解JS中的标记
欢迎来到JavaScript教程
单击我来更改
函数clickedMe(){
document.getElementById('h2tag')。innerHTML='唉!我被点击了!'
}

您也可以使用,直到今天我才发现它有用。该代码在不支持addEventListener的IE上不起作用-跨浏览器代码将是:
if(this[n]。addEventListener)this[n]。addEventListener('click',function(){alert('hello');},false);else if(this[n].attachEvent)this[n].attachEvent('onclick',function(){alert('hello');})这是更新后的链接:@Kobi,不错。我从来没有想到过@影子,是的,这对IE没有好处。我想把IE版本扔到你正确描述的地方,但是我想我建议OP考虑一个可以消除所有痛苦的图书馆。我对IE问题的答案做了更清晰的修改。一般来说,像这样的事情(或其他发布的例子)几乎总是比在HTML中注册行为和事件更可取。它的可维护性更强。添加一个描述比一段代码更有用。
<html>
        <head> 
            <title>Understanding Tags in JS </title>
        </head>
        <body>
            <h1> Welcome to JavaScript Tutorial </h1>
            <h2 id = 'h2tag' onclick = "clickedMe()"> Click me to change </h2>
            <script>
                function clickedMe() {
                document.getElementById('h2tag').innerHTML = 'Alas ! I am clicked!'
            }
            </script>
        </body>
    </html>