如何更改 javascript 函数以针对所有 ID 后跟数字
Posted
技术标签:
【中文标题】如何更改 javascript 函数以针对所有 ID 后跟数字【英文标题】:How to change a javascript function to target all ID's followed by a number 【发布时间】:2019-04-04 10:19:53 【问题描述】:我正在构建一个使用包含在引导模式中的视频的网站。
我有这段代码可以在用户打开模式时自动播放视频,然后在用户关闭时暂停视频。一页上有多个视频模式,每个都有自己的 ID。
代码如下:
$('#smallVideoModal1').on('shown.bs.modal', function ()
$('#video1')[0].play();
)
$('#smallVideoModal1').on('hidden.bs.modal', function ()
$('#video1')[0].pause();
)
我想知道是否有一种方法可以以某种方式更改此 javascript 以定位任何以 ID 为“smallVideoModal”后跟数字开头的模式?我不喜欢为每个模态重复同一段 javascript 的想法。
【问题讨论】:
可能,是的,但是很多最好使用类代替 - 数字索引 ID 通常是一个非常糟糕的主意 您的处理程序收到的事件相当 badly documented 或者可能在没有链接到它的模态文档的情况下在某处进行了描述,但我敢打赌您的函数中this
的值或事件本身可能会暴露模态元素。所以你可能会得到this.querySelector('video')
或e.something???..querySelector('video')
的视频元素,这取决于事件的内容和this
的值是什么
【参考方案1】:
在您的上下文中使用.querySelector('video')
(this
或其他)
【讨论】:
以上是关于如何更改 javascript 函数以针对所有 ID 后跟数字的主要内容,如果未能解决你的问题,请参考以下文章
如何以1-1000000作为参数运行JavaScript函数