javascript - JQuery:可点击div顶部的可点击元素

标签 javascript jquery css

我有一个可点击的 div,您可以在此处看到 http://jsfiddle.net/Sj575/277/

我的问题是,当 div 的可点击打开内容出现在它的顶部时(有点像网格)。 但是当我点击顶部的东西时,它确实会在 div 关闭时注册图像动画。

JQUERY (div)

$(function() {
    $(".ext").click(function() {
        $(".int").toggleClass("hidden");
        $(".ext").toggleClass("full");
        $("h1").toggleClass("hidden");
        $(".pe").toggleClass("show");
    });

    $(".int").click(function() {
        $(".ext").toggleClass("hidden");
        $(".int").toggleClass("full");
        $("h1").toggleClass("hidden");
        $(".pi").toggleClass("show");
    });
});

JQUERY(网格器)

jQuery(document).ready(function ($) {

    // Call Gridder
    $(".gridder").gridderExpander({
        scrollOffset: 60,
        scrollTo: "panel", // "panel" or "listitem"
        animationSpeed: 400,
        animationEasing: "easeInOutExpo",
        onStart: function () {
            console.log("Gridder Inititialized");
        },
        onExpanded: function (object) {
            console.log("Gridder Expanded");
            $(".carousel").carousel();
        },
        onChanged: function (object) {
            console.log("Gridder Changed");
        },
        onClosed: function () {
            console.log("Gridder Closed");
        }
    });
});

最佳答案

如果您希望点击事件仅在父 div 而不是其后代上触发,请尝试在 $(".ext") 和 $(".int") div 点击处理程序中使用以下比较:

if (e.target !== this)
    return;

工作示例,其中我添加了一个不会在点击时导致增长/隐藏动画的子按钮:http://jsfiddle.net/zxagqwvq/

所以你会有这样的东西:

$(function() {
    $(".ext").click(function(e) {

    if (e.target !== this)
        return;

    $(".int").toggleClass("hidden");
    $(".ext").toggleClass("full");
    $("h1").toggleClass("hidden");
    $(".pe").toggleClass("show");

    });

    $(".int").click(function(e) {

        if (e.target !== this)
            return;

        $(".ext").toggleClass("hidden");
        $(".int").toggleClass("full");
        $("h1").toggleClass("hidden");
        $(".pi").toggleClass("show");
     });
});

关于javascript - JQuery:可点击div顶部的可点击元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37563941/

相关文章:

javascript - 创建 CSS 过渡

javascript - 如何在 Mongoose 中更新/插入文档?

javascript - 禁用(但仍然允许)滚动

javascript - 如何从 body 到 division 获取 javascript "link-rotator"功能?

javascript - 为什么悬停时背景图像有时不显示

javascript - Angular.js - 无法注入(inject)外部模块

javascript - 如何在代码中添加 `0`这种条件?

html - 内联 SVG 不缩放

html - IE8 拉伸(stretch)表格单元格高度

html - 如何在左侧和中心放置两个导航元素