首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MouseEvent.mozPressure已弃用。请改用PointerEvent.pressure

MouseEvent.mozPressure已弃用。请改用PointerEvent.pressure
EN

Stack Overflow用户
提问于 2019-08-31 09:22:02
回答 3查看 6.3K关注 0票数 4

如何在代码中修复此问题?

这很奇怪,因为我在代码中找不到这一点,但火狐抱怨说"MouseEvent.mozPressure已被弃用,请改用PointerEvent.pressure。“在控制台中。

有没有办法解决这个问题?我不知道我需要做些什么来解决这个问题。

此错误消息出现在jsfiddle、gitHub页面、codepen中。

https://jsfiddle.net/p5f3xc0b/3/

代码语言:javascript
复制
const videoPlayer = (function makeVideoPlayer() {
    "use strict";
    const players = [];

    function onPlayerReady(event) {
        const player = event.target;
        player.setVolume(100); // percent
    }

    let hasShuffled = false;

    function onPlayerStateChange(event) {
        const player = event.target;
        if (!hasShuffled) {
            player.setShuffle(true);
            player.playVideoAt(0);
            hasShuffled = true;
        }
        if (event.data === YT.PlayerState.PLAYING) {
            for (let i = 0; i < players.length; i++) {
                if (players[i] !== event.target) players[i].pauseVideo();
            }
        }

        const playerVars = player.b.b.playerVars;
        if (playerVars.loop && event.data === YT.PlayerState.ENDED) {
            player.seekTo(playerVars.start);
        }
    }

    function addVideo(video, settings) {
        players.push(new YT.Player(video, Object.assign({
            videoId: video.dataset.id,
            host: "https://www.youtube-nocookie.com",
            events: {
                "onReady": onPlayerReady,
                "onStateChange": onPlayerStateChange
            }
        }, settings)));
    }

    function init(video, settings) {
        load.js("https://www.youtube.com/player_api").then(function () {
            YT.ready(function () {
                addVideo(video, settings);
            });
        });
    }
    return {
        init
    };
}());

function loadPlayer(opts) {
    "use strict";

    function show(el) {
        el.classList.remove("hide");
    }

    function initPlayer(wrapper) {
        const video = wrapper.querySelector(".video");
        opts.width = opts.width || 198;
        opts.height = opts.height || 198;
        opts.autoplay = 1;
        opts.controls = 1;
        opts.rel = 0;
        opts.iv_load_policy = 3;
        opts.fs = 0;
        opts.disablekb = 1;

        function paramInOpts(settings, param) {
            if (opts[param] !== undefined) {
                settings[param] = opts[param];
            }
            return settings;
        }
        const settingsParams = ["width", "height", "videoid", "host"];
        const settings = settingsParams.reduce(paramInOpts, {});
        const playerVarsParams = ["autoplay", "cc_load_policy",
            "controls", "disablekb", "end", "fs", "iv_load_policy",
            "list", "listType", "loop", "playlist", "rel", "start"
        ];
        settings.playerVars = playerVarsParams.reduce(paramInOpts, {});
        videoPlayer.init(video, settings);
    }

    function coverClickHandler(evt) {
        const wrapper = evt.currentTarget.nextElementSibling;
        show(wrapper);
        initPlayer(wrapper);
        evt.currentTarget.classList.add("hide");
    }
    const cover = document.querySelector(opts.target);
    cover.addEventListener("click", coverClickHandler);
}
const playlist = "0dgNc5S8cLI,mnfmQe8Mv1g,-Xgi_way56U,CHahce95B1g";

loadPlayer({
    target: ".jacket-left",
    width: 277,
    height: 207
});

loadPlayer({
    target: ".jacket-middle",
    width: 277,
    height: 207
});
loadPlayer({
    target: ".jacket-right",
    width: 277,
    height: 207
});

loadPlayer({
    target: ".jacketc",
    width: 600,
    height: 338,
    loop: true,
    playlist
});
loadPlayer({
    target: ".alpha",
    start: 0,
    end: 280,
    loop: true
});
loadPlayer({
    target: ".beta",
    start: 0,
    end: 240,
    loop: true
});
loadPlayer({
    target: ".gamma",
    start: 0,
    end: 265,
    loop: true
});
loadPlayer({
    target: ".delta",
    start: 4,
    end: 254,
    loop: true
});
loadPlayer({
    target: ".epsilon",
    start: 0,
    end: 242,
    loop: true
});
loadPlayer({
    target: ".zeta",
    start: 0,
    end: 285,
    loop: true
});
loadPlayer({
    target: ".eta",
    start: 23,
    end: 312,
    loop: true
});
loadPlayer({
    target: ".theta",
    start: 2
});
loadPlayer({
    target: ".iota"
});
EN

回答 3

Stack Overflow用户

发布于 2019-08-31 11:00:21

错误可能来自其他原因。这只是一个警告,因为它与您的代码无关,所以我不会担心它。如果你访问大多数网站,即使他们在控制台中有错误消息,也不会以任何方式影响你正在做的事情。如果你所做的一切都是有效的,我不会担心。祝你好运,这看起来是个很酷的项目!

票数 2
EN

Stack Overflow用户

发布于 2019-08-31 10:57:06

这是一个警告,而不是一个错误。看起来你的代码仍然有效...但是,为了消除警告,您可以使用try-catch块。我不知道你的警告是从哪里来的,因为我不明白这个错误。如果您指定这一行,我可以为您添加try-catch。

票数 1
EN

Stack Overflow用户

发布于 2020-04-13 01:05:00

正如Marci回答on another forum时所说的,这个警告来自YouTube embed。当你在火狐中访问youtube.com时,它实际上就会被触发。相关代码在desktop_polymer_inlined_html_polymer_flags_v2.js的1355行。

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

https://stackoverflow.com/questions/57734568

复制
相关文章

相似问题

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