首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >只需单击一次即可将任意元素的文本更改为" text -1“,双击可将任意元素的文本更改为”text -2

只需单击一次即可将任意元素的文本更改为" text -1“,双击可将任意元素的文本更改为”text -2
EN

Stack Overflow用户
提问于 2021-06-03 17:21:11
回答 1查看 24关注 0票数 0

如果任何元素的文本被单击一次,它被更改为" text -1“,否则,如果双击为"TEXT-2”。所以我创建了一个条件,根据不同的输出有2个不同的句子。在目前的JS中,e存在一个未定义的问题,我不知道如何修复它。此外,我不确定e.type === 'click'和后来的e.type === 'dblclick'的语法是否为correct.Thanks

代码语言:javascript
复制
if ( e.type === 'click')
{
    document.querySelector('ul').addEventListener('click', onClick)
    function onClick(e){
    let val;
    val = e.target.innerText = 'TEXT-1';
    

e.preventDefault();

    console.log(val)
}} else if (e.type === 'dblclick'){
    document.querySelector('ul').addEventListener('dblclick', onClick)
    function onClick(e){
    let val;
    val = e.target.innerText = 'TEXT-2';
            
        
e.preventDefault();
        
    console.log(val)
}}
代码语言:javascript
复制
            <ul>
              <li>
                List Item 1
              </li> 
              <li>
                List Item 2
              </li> 
              <li>
                List Item 3
              </li>
              </ul>

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-06-03 17:58:20

您可以尝试在项目上添加多个事件侦听器。在此示例中,有一个包含3个项目的无序列表

代码语言:javascript
复制
const items = document.querySelectorAll('li');

items.forEach((e)=>{
    e.addEventListener('click', ()=>{
  e.textContent = "text1"
  });
  
  
    e.addEventListener('dblclick', ()=>{
  e.textContent = "text2"
  });
})
代码语言:javascript
复制
<ul>
<li>item 1</li>
<li>item 2</li>
<li>item 3</li>
</ul>

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67818788

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档