我是JavaScript/CSS的新手(基本上是web dev的整个世界),我真的很难创建以下小部件.我创建了一张我想要制作的图片,以使其更清晰.

播放/暂停和停止按钮准备就绪.循环复选框没问题.但进度条很痛苦.这两个标记应该标记文件开始播放的位置以及停止的位置.进度条也应该是可点击的,所以如果我想访问某个时间点,那么它可能.
jQuery UI滑块:用于滑动进度条并使用该可拖动滑块访问音频文件中的某个点.工作良好.但没有标记,看起来真的很难看.不要如何改变它.
<progress>标签:不是很灵活.标记?点击?
<div> tag:似乎无法获得我点击的位置.
那么,你们推荐什么?我该怎么办?
如果我像这样初始化矩阵
x = [["O", "O", "O"], ["O", "O", "O"], ["O", "O", "O"]];
Run Code Online (Sandbox Code Playgroud)
然后设置
x[0][1] = "X"
它返回
[ [ 'O', 'X', 'O' ], [ 'O', 'O', 'O' ], [ 'O', 'O', 'O' ] ]
Run Code Online (Sandbox Code Playgroud)
符合预期
但是,如果我将矩阵初始化如下:
x = new Array(3).fill(new Array(3).fill('O'))
Run Code Online (Sandbox Code Playgroud)
然后
x[0][1] = "X"
它还给我
[ [ 'O', 'X', 'O' ], [ 'O', 'X', 'O' ], [ 'O', 'X', 'O' ] ]
Run Code Online (Sandbox Code Playgroud)
这里发生了什么?