如何使用 WordPress 点击播放 GIF(如 9GaG.com)?

2024-02-23

我需要在wordpress网站中实现这个“gif播放器”,因为gif页面高达6mb,所以性能真的很糟糕

我读过这个Onclick 使用 jQuery 播放 GIF 图像并从头开始 https://stackoverflow.com/questions/20249401/onclick-play-gif-image-with-jquery-and-start-from-beginning还有这个如何从onclick函数开始播放动画GIF https://stackoverflow.com/questions/20032860/how-to-play-animated-gif-from-the-beginning-onclick-function这几乎是一个解决方案,但我不知道如何在每个条目中使用 WordPress 来完成此操作

9gag.com 做得很完美;显示预览图像,单击时再现 gif,如果再次单击则停止 gif。如果再次单击,将再次从头开始播放 gif

我怎样才能用wordpress来完成这个?


9GAG 的本质是它有两个图像 - 一个是动画 GIF,另一个是静态 JPG。

在你点击它之前,它会显示 JPG 文件。点击它后,它会将 GIF 加载到同一个文件夹中<img>标签,让你以为它“播放”了 GIF 图像。

如果再次单击它,则会将 JPG 文件加载回<img>标签,让你认为它“暂停”了 GIF 图像。

图像处理,比如只使用一个 GIF 并暂停和播放它,在实际应用中非常困难 - 这种方法是更好的方法之一。

这是一些代码:

<div id="gifdiv">
  <img src="staticgif.jpg" />
</div>
<script type="text/javascript">
  $("#gifdiv").click(function () {
    if ($(this).find("img").attr("data-state") == "static") {
      $(this).find("img").attr("src", "animatedgif.gif");
    } else {
      $(this).find("img").attr("src", "staticgif.jpg");
    }
  });
</script>

另外,如果你想要速度,我认为 9GAG 通过预先预加载 GIF 来实现,如下所示:

<script type="text/javascript">
  (new Image()).src = "animatedgif.gif"; // this would preload the GIF, so future loads will be instantaneous
</script>

希望这可以帮助。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 WordPress 点击播放 GIF(如 9GaG.com)? 的相关文章

  • Mapbox GL 中的 MaxBounds 和自定义非对称填充

    我有一个 Mapbox GL JS 应用程序 在地图上显示一些小部件 为了确保地图上的任何内容都不会被它们隐藏 我使用以下命令添加了一些填充map setPadding 这是一个不对称的 在我的例子中左边比右边大 它按预期工作 例如fitB
  • 在 R 传单中添加不透明度滑块

    如何在 R leaflet 应用程序中添加滑块来控制特定图层的不透明度 对于这个应用程序 我不想使用闪亮 这里建议 在 R 传单应用程序中添加滑块 https stackoverflow com questions 37682619 add
  • 如何立即启动setInterval循环? [复制]

    这个问题在这里已经有答案了 在一个简单的setInterval setInterval function Do something every 9 seconds 9000 第一个动作将在 9 秒后发生 t 9s 如何强制循环立即执行第一个
  • 在javascript中访问函数内的实例变量?

    如何以最简单的方式访问函数内的实例变量 function MyObject Instance variables this handler Methods this enableHandler function var button doc
  • 这种类型注释在没有 TypeScript 的 React 代码中如何工作?

    我在看这段代码示例 https reacttraining com react router web example auth workflow在 ReactRouter 页面上 这篇文章很有趣 const PrivateRoute com
  • API 使用令牌向 odoo 进行身份验证

    我想使用令牌从 Express 应用程序向 Odoo 进行身份验证 我在用odoo xmlrpc https www npmjs com package odoo xmlrpc连接 Odoo 的节点模块 我的快递应用程序 Odoo 要求 A
  • 如何禁用 body 元素的滚动?

    如何禁用正文滚动 body css overflow hidden 仅隐藏滚动条 但不会禁用滚动 我想禁用正文的滚动 但我想保持其他分区的滚动完好无损 试试这个 CSS 不需要 jQuery 评论后更新 尝试指定高度body too
  • .live() 或 .livequery()

    我有一个Ajaxed的网站 Ajax的内容来自其他页面 例如about html contact html ajax 从名为 main content 的 div 获取内容 但是在 ajax 调用之后 我的其余脚本就中断了 比如tinysc
  • 如何在 select 和 option 标签中添加 JSON 数据?

    我有这个html代码 div class searchfilter div class searchwrapper div div
  • 为什么这行带有“await”的代码会触发微任务队列处理?

    以下引用是我理解微任务队列处理的主要参考 当 JS 堆栈清空时 就会处理微任务 承诺使用 杰克 阿奇博尔德 https twitter com jaffathecake status 954653170986311680 这对我来说没有意义
  • 在 JQuery 中发布表单并填充 DIV - 在 IE 中损坏

    我正在尝试创建一个通过 jQuery 发布数据并将返回值填充到同一 DIV 中的表单 这样页面就不会在发布操作时刷新 div div
  • 如何在 Web 服务器上设置 gzip 压缩?

    我有一个嵌入式网络服务器 总共有 2 兆空间 通常 您使用 gzip 文件对客户端有利 但这会节省我们在服务器上的空间 我读到你可以只 gzip js 文件并将其保存在服务器上 我在 IIS 上测试过 但没有任何运气 为了使这项工作成功 我
  • Web组件中嵌套槽的内容不可见

    我有一个 Web 组件 它应该接受任意元素来包装其内容 虽然我可以在 Chrome 开发工具中看到插槽已正确分配 但 DOM 中什么也没有出现 以前有人见过这个问题吗 定义 class ExampleParent extends HTMLE
  • 使用 animate() 的简单 jQuery 幻灯片

    使用 jQuery 的animate 如何将每个图像滑动一次 使用Slick js https github com kenwheeler slick 像CSS动画 然后停在最后一个 div class slideshow style he
  • 类中可以有生成器 getter 吗?

    我的意思是吸气剂是发电机 我相信这一切都是 ES6 也许像这样 class a get count let i 10 while i yield i let b new a for const i of b count console lo
  • 如何在画布上所有其他内容后面绘制图像? [复制]

    这个问题在这里已经有答案了 我有一块画布 我想用drawImage在画布上当前内容后面绘制图像 由于画布上已经有内容 我正在使用字面上的画布来创建包含图像的画布 因此我无法真正先绘制图像 所以我无法使用drawImage在我呈现其余内容之前
  • 确定 Javascript 中的日期相等性

    我需要找出用户在 Javascript 中选择的两个日期是否相同 日期以字符串 xx xx xxxx 形式传递给该函数 这就是我需要的全部粒度 这是我的代码 var valid true var d1 new Date datein val
  • Chrome 扩展:强制 popup.html 关闭

    我想知道是否可以强制 popup html 关闭 在弹出的 javascript 中 window close
  • 如何映射轮播的子项数组?

    我正在尝试将 Carousel 组件包装在映射对象数组周围作为组件的子级 目前我只能让映射创建映射对象的 1 个子对象 轮播需要像这样
  • 将多维数组转换为单数组(Javascript)

    我有一个对象数组 来自 XLSX js 解析器 因此其长度和内容各不相同 表示已给予项目的资助 简化后 它看起来像这样 var grants id p 1 location loc 1 type A funds 5000 id p 2 lo

随机推荐

  • 如何禁用量角器中的动画?

    我在谷歌上找到了一些答案 但它们似乎不适用于我的项目 一些答案谈到了向其添加一些代码conf js file s onPrepare 函数 但我的项目中没有该文件 我有一个名为protractor config js 默认情况下位于 Ang
  • hg 克隆时出现“流意外结束”错误

    我正在尝试通过 hg 从 bitbucket 克隆一个位存储库 但我不断收到此错误 abort stream ended unexpectedly got 404093 bytes expected 8706452 mac user hg
  • 在 Xamarin 中自动将 aps 环境从开发环境转换为生产环境

    在我的 Xamarin iOS 项目中 Entitlements plist 有aps environment set to development 用于开发测试目的 我正在使用适用于 App Store 的 Visual Studio T
  • 如何使面板充满屏幕直至页脚?

    我希望我的面板占据所有屏幕 直到页脚 即使面板是空的 如果面板已满 我想滚动查看内容 但页脚应始终在页面底部可见 你有主意吗 这是代码 list mobile footer position absolute bottom 0 right
  • 自动运行php脚本

    我有一个 php 脚本 应该每天自动运行 由于 php 脚本是根据请求运行的 我该怎么做 还有其他方法使用 cronjob 任务吗 两种选择 使用crontab恶魔 雇用一名工人并让他每 24 小时在浏览器中打开一次脚本 这是你的选择 要使
  • django模板中父子关系的树形结构

    我如何在 django 模板中实现树结构而不使用 django mptt 我有模型 class Person TimeStampedModel name models CharField max length 32 parent model
  • 如何在Android应用程序中点击后隐藏通知

    这是在服务开始时发出通知的代码 NotificationCompat Builder mbuild new NotificationCompat Builder getApplicationContext Intent in new Int
  • 如何注册应用程序以在 iPad 中打开我的应用程序中的 pdf 文件

    我想从 pdf 页面在我的应用程序中打开 pdf 文件 但我没有在我的应用程序中打开 pdf 的任何选项 这是我的 info plist 文件
  • 为什么 git稀疏结帐 会导致致命错误?

    这是我的命令git我正在 Windows 中运行 以稀疏存储库中的签出文件夹 git clone verbose filter blob none no checkout depth 1 sparse https user email pr
  • \x1a 字符的含义是什么

    什么是 x1a字符的含义以及为什么mysql real escape string逃避吗 从文档中 mysql real escape string 调用 MySQL 的库函数 mysql real escape string 该函数在以下
  • 获取两个标题之间的差异

    我有这个方法来计算 2 个 0 360 罗盘方向之间的差异 尽管这可以计算出我的绝对偏差 例如 始终为正输出 有多远 但我无法弄清楚需要做什么才能将符号引入到输出中 理想情况下 如果从初始航向到最终航向的最短距离是顺时针旋转 我希望erro
  • 如何在rpart中应用权重?

    我有 Kaggle 实践竞赛中的房屋数据 我正在使用 rpart 训练一个简单的第一个模型来预测销售价格 该模型无法正确识别销售状况异常或预付款的销售 因此 我想增加这个在模型中显然被忽略的变量的重要性 我假设这是通过使用 权重 参数来完成
  • .ssh/config:Mac OS Sierra 10.12.6 上的“错误配置选项:UseKeychain”

    我正在尝试在 Mac Mac OS Sierra 10 12 6 上设置 ssh 配置 以便将 ssh 密钥的密码存储在钥匙串中 以前我可以这样做 ssh add K ssh id rsa 但最近这个方法似乎不再起作用了 下列的本文 htt
  • USB 传输数据

    我正在尝试通过 USB 发送和接收数据 我的设备 Acer Iconia A500 拥有连接到设备所需的一切 一切都很好并且工作正常 但是当我尝试发送和接收数据时 它的行为并不像预期的 这是我的代码 for this is the main
  • git pull --rebase 上游 master 污染了我的 Github PR diff

    在按照维护人员的要求更改 PR 之前 我会执行以下操作git pull rebase upstream master将我的提交置于代码库中其他新提交之上 然而 这似乎污染我的 PR 的差异 https github com pandas d
  • preg_match() 和用户名

    function isUserID username if preg match a z d 2 20 i username return true else return false 简单的 我有这个 你能解释一下它检查什么吗 我知道它会
  • 无法使用不安全的私钥通过 ssh 连接到 vagrant VM(vagrant 1.7.2)

    我有一个包含 3 个虚拟机的集群 这是 Vagrant 文件 mode ruby vi set ft ruby hosts host0 gt 192 168 33 10 host1 gt 192 168 33 11 host2 gt 192
  • 如何在 C 中创建 3 位变量作为数据类型? [复制]

    这个问题在这里已经有答案了 I can typedef char to CHAR1这是8位 但是如何将 3 位变量设置为数据类型呢 您可能想要执行类似于以下操作的操作 struct unsigned int fieldof3bits 3 n
  • CSS Hack 针对 Firefox 3.5+?

    Firefox 3 5 现在支持 nth 伪类 我用它来定位 Safari 和 Chrome 的 css 现在 Firefox 也会读取这些内容 从而导致轻微的布局问题 有谁知道专门针对 FF 3 5 的方法吗 BODY nth of ty
  • 如何使用 WordPress 点击播放 GIF(如 9GaG.com)?

    我需要在wordpress网站中实现这个 gif播放器 因为gif页面高达6mb 所以性能真的很糟糕 我读过这个Onclick 使用 jQuery 播放 GIF 图像并从头开始 https stackoverflow com questio