【问题标题】:Executing an onclick event, without clicking.执行 onclick 事件,而不点击。
【发布时间】:2023-04-04 07:23:01
【问题描述】:

我正在为 JavaScript 使用一个名为 photobooth 的脚本,用户应该点击相机图标来拍照,但我希望它是执行代码。这是我认为是 photobooth 拍照事件的代码的 sn-p。

var L = g("blind");
g("trigger").onclick = function () {
    L.className = "blind", L.style.opacity = 1, setTimeout(function () {
        L.className = "blind anim", L.style.opacity = 0
    }, 50);
    var e = {};
    C.isActive() ? e = C.getData() : f ? e = {
        x: (p - T.videoWidth) / 2,
        y: (d - T.videoHeight) / 2,
        width: T.videoWidth,
        height: T.videoHeight
    } : e = {
        x: 0,
        y: 0,
        width: p,
        height: d
    };
    var t = y("canvas");
    t.width = e.width, t.height = e.height;
    if (f) t.getContext("2d").drawImage(T, Math.max(0, e.x - (p - T.videoWidth) / 2), Math.max(e.y - (d - T.videoHeight) / 2), e.width, e.height, 0, 0, e.width, e.height);
    else {
        var n = x.getImageData(e.x, e.y, e.width, e.height);
        t.getContext("2d").putImageData(n, 0, 0)
    }
    h.onImage(t.toDataURL())
};

我想调用该事件或更改它以便我可以调用它,我对 js 不是很好,所以任何帮助都会很棒!

这里是来源:photobooth js

【问题讨论】:

    标签: javascript onclick photo simulate


    【解决方案1】:

    使用 jquery 是一种选择吗?你可以做这样的事情

    $("#trigger").click();
    

    或者如果你真的想要原生 js,你可以这样做

    document.getElementById("trigger").click();
    

    【讨论】:

      【解决方案2】:

      由于 onclick 引用了一个函数,所以你总是可以通过

      调用它
      document.querySelector(".trigger").onclick()
      

      当然,document.querySelector 只是获取具有所需功能的 DOM 对象的问题,它可以被任何其他方式引用。

      【讨论】:

        【解决方案3】:

        Photobooth 在用户点击相机图标时调用:

         $('#example').photobooth().on("image",function(ev){});
        

        触发点击相机图标:

        $("#example image").click();
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2011-09-27
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2018-01-10
          相关资源
          最近更新 更多