O. *_*dze 4 html javascript css safari macos
我有这样的简单按钮:
<button class="emoji-button-container" onblur="APP.hideEmojiContainer()" onclick="APP.toggleEmojiContainer()">
Run Code Online (Sandbox Code Playgroud)
在 Chrome 上,这两个事件都可以完美运行。
在 Safari 上,onclick 事件可以正常工作,但不会触发 onblur 事件。此外 element.blur() 函数不会触发 onblur 事件。我需要它像在 Chrome 上一样在 Safari 上工作,那我该怎么办?这里有什么问题?
小智 5
在 Safari 上,按钮可能不会聚焦在点击上(并且因为它们没有聚焦,所以它们不会触发模糊)
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#Clicking_and_focus
您可以使用 javascript 聚焦按钮
<!DOCTYPE html>
<html lang="en">
<head>
<script type="text/javascript">
function clickFunc(event) {
console.log(event, 'click');
event.target.focus();// Add me
};
function blurFunc(event) {
console.log(event, 'blur');
};
</script>
</head>
<body>
<button class="emoji-button-container" onblur="blurFunc(event)" onclick="clickFunc(event)"></button>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)