JavaScript Day15 - event(2)

event

  • 查目前网页的 event,开启 Chrome 的开发者工具,点选 Elements,之後在 CSS 的样式 (styles) 那栏会有一个 Event Listeners,点击後就可看到相关的事件
  • 多个事件
    • onEvent:只会执行最後一个
    • addEventListener():都会执行
  • removeEventListene():可用来移除 addEventListener() 的事件,但是第二个参数 (function) 的部分需要独立定义,不是写在里面,否则无法移除

调整前

let btn = document.getElementById('btn');

btn.addEventListener('click',function(){
	console.log('事件移除失败');
},false)

btn.removeEventListener('click',function(){
	console.log('事件移除失败');
},false)
// 虽然内容相同,但属於不同的 function

调整後

let btn = document.getElementById('btn');

let eventMove = function() {
	console.log('事件移除成功');
}

btn.addEventListener('click', eventMove, false);

btn.removeEventListener('click', eventMove, false);

// 属於相同的 function

综合练习:点击切换内容

<body>
    <div class="block">
        <div id="b1">区块1</div>
        <div id="b2">区块2</div>
        <div id="text">内容</div>
    </div>
    <script>
        let block = document.querySelector(".block");
        let text = document.querySelector("#text");

        function changeText(e) {
            let name = e.target.id;
            if (name=="b1"){
                text.textContent = "block1";
            } else if (name=="b2") {
                text.textContent = "block2";
            } else {
                text.textContent = "";
            }
        }
        
        block.addEventListener("click", changeText);
    </script>
</body>

次回

趁这个机会来了解箭头函式吧


<<:  Day 29 - Math Object & Date Object

>>:  [ Day 15 ] - 取得节点内资料的方法

[Day 27] 组件基础(2)

今天也要来讲解组件的基础,基础打好未来学习新的东西才不会搞得东倒西歪,虽然今天已经27天了o(^▽^...

Day02: 02 - 前端 - 开启专案、页面刻划、bootstrap-vue使用

Hi,搭给贺,我是Charlie! 在Day01当中,我们安装了所需的套件跟软件,还做了版面。 接下...

Day 28 : 撰写LineBot,利用短短三天认识自动化机器人(中)

今天就来实际撰写LineBot罗~ 我们要先下载必要套件,linebot-sdk以及flask。主要...

从零开始学3D游戏设计:雷射陷阱光束

这是 Roblox 从零开始系列,效果章节的第六个单元,今天你将开始学习制作光束效果 Part.1 ...

【Day 22】- 将朋朋的 Instagram 贴文全部按赞owo(实战 Selenium 自动点击 Instagram 好友贴文赞 2/2)

前情提要 前一篇带各位透过汇入 Session 达到不必输入帐号密码便可登入的目的。 开始之前 今天...