记一个 Safari 的 bug

input 的click/select的 eventHandler 会阻止它被选中,可能是要等到这个 handler 处理完了才会被选中发现的原因:当时在给一个元素加了 ripple 的效果之后,发现 iOS 上变卡了

input 的click/select的 eventHandler 会阻止它被选中,可能是要等到这个 handler 处理完了才会被选中

发现的原因:当时在给一个<label>元素加了 ripple 的效果之后,发现 iOS 上变卡了

<input type="radio" name="model" {id} hidden on:select={() => setModel(id)} checked={$model === id}/>

<label use:ripple={{ color: 'var(--c-fg-70)' }} for={id}>
  <h4>{name}</h4>
  <h5>{title}</h5>
</label>

后来的解决办法,是改成用<button>,但我还是很喜欢用 label 和 input 这样,所以后来还是保留了 label 为 sr-only