You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用jQuery将修改Div尺寸的按钮改为长按3秒触发的按钮?

实现长按3秒触发的按钮功能

针对你的需求,只需要给.view-toggle按钮添加长按事件逻辑即可,原有汉堡菜单的点击功能保持不变。以下是修改后的代码:

完整代码

HTML(无需修改)

<div class="burger-container">
<button class="navbar-toggle navbar-toggle-overlay burger" type="button">
<span class="sr-only">Toggle navigation</span>
</button>
<button class="view-toggle">
<span class="slider-icon"></span>
</button>
</div>

JavaScript(新增长按逻辑)

// 保留原有汉堡菜单点击逻辑
$(document).on("click", ".navbar-toggle-overlay", function() {
    var a = $(this),
        d = $(".overlay-menu");
    if (d.is(":visible")) {
        a.removeClass("active");
        d.fadeOut();
        c();
        $(".nav-container .image, .view-toggle").removeClass("white");
        $(".project").removeClass("hidden");
    } else {
        a.addClass("active");
        d.fadeIn();
        b();
        $(".project").addClass("hidden");
        $(".nav-container .image, .view-toggle").addClass("white");
    }
});

// 长按按钮逻辑:3秒后触发修改Div尺寸功能
let longPressTimer;

// 鼠标按下时启动定时器
$(document).on("mousedown", ".view-toggle", function() {
    longPressTimer = setTimeout(() => {
        // 替换为你实际修改Div尺寸的代码
        // 示例:修改目标Div的宽高
        // $(".your-target-div").css({ width: "600px", height: "400px" });
        console.log("长按3秒,执行修改Div尺寸操作");
    }, 3000);
});

// 鼠标松开或离开按钮时,清除定时器终止触发
$(document).on("mouseup mouseleave", ".view-toggle", function() {
    clearTimeout(longPressTimer);
});

逻辑说明

  • 当用户按下.view-toggle按钮时,启动一个3秒的定时器;
  • 如果用户按住按钮满3秒,定时器到期后执行修改Div尺寸的逻辑;
  • 如果用户中途松开按钮或者鼠标离开按钮区域,会立即清除定时器,避免误触发;
  • 原有汉堡菜单的点击功能不受任何影响。

内容的提问来源于stack exchange,提问作者A.Amiri

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 16:42:52