首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Html类事件侦听器无法正常工作。

Html类事件侦听器无法正常工作。
EN

Stack Overflow用户
提问于 2017-12-26 23:56:57
回答 1查看 59关注 0票数 0

我有一个名为"banner_category“的类,它具有多个ids,如下所示

代码语言:javascript
复制
  <div class="row">
            <div class="col-md-3">
                <div class="banner_item align-items-center" id="cat1" style="background-image:url(images/bolts.jpg)">
                    <div class="banner_category">
                        <a href="#">Bolts</a>
                    </div>
                </div>
            </div>
            <div class="col-md-3">
                <div class="banner_item align-items-center" id="cat2" style="background-image:url(images/abrasives.jpg)">
                    <div class="banner_category">
                        <a href="#">Abrasives</a>
                    </div>
                </div>
            </div>
            <div class="col-md-3">
                <div class="banner_item align-items-center" id="cat3" style="background-image:url(images/valves.jpg)">
                    <div class="banner_category">
                        <a href="#">Valves</a>
                    </div>
                </div>
            </div>
            <div class="col-md-3">
                <div class="banner_item align-items-center" id="cat4" style="background-image:url(images/electrical.jpg)">
                    <div class="banner_category">
                        <a href="#>other</a>
                    </div>
                </div>
            </div>
        </div>

我想要做的是,当我点击每个横幅,我想得到横幅文本。例如,当我单击id=cat4时,它应该是console.log "other",id=cat1应该使用console.log“螺栓”,我知道如何通过it设置事件侦听器,我想要做的是设置一个函数而不是四个函数,所以我尝试了以下方法

代码语言:javascript
复制
$(".banner_category").on("click", function(){
    var clickedcat = document.getElementById('cat').textContent;
    console.log(clickedcat);
})

但它只console.log螺栓,无论我点击哪一个。

如何实现使用一个函数为每个Id获取相应的文本?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-12-27 00:01:01

您没有一个以cat作为id的元素。对于id没有神奇的自动完成-您必须命名您想要目标的id。

也就是说,首先,不要把jQuery和普通的js混为一谈,其次,为什么不直接输出$(this).text()呢?

代码语言:javascript
复制
$(".banner_category").on("click", function(){
    console.log($(this).text());
    // optional - trim the text: $(this).text().trim()
});

代码语言:javascript
复制
$('.banner_category').on('click', function() {
  console.log($(this).text().trim());
});
代码语言:javascript
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="row">
  <div class="col-md-3">
    <div class="banner_item align-items-center" id="cat1" style="background-image:url(images/bolts.jpg)">
      <div class="banner_category">
        <a href="#">Bolts</a>
      </div>
    </div>
  </div>
  <div class="col-md-3">
    <div class="banner_item align-items-center" id="cat2" style="background-image:url(images/abrasives.jpg)">
      <div class="banner_category">
        <a href="#">Abrasives</a>
      </div>
    </div>
  </div>
  <div class="col-md-3">
    <div class="banner_item align-items-center" id="cat3" style="background-image:url(images/valves.jpg)">
      <div class="banner_category">
        <a href="#">Valves</a>
      </div>
    </div>
  </div>

</div>

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

https://stackoverflow.com/questions/47984891

复制
相关文章

相似问题

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