-
Notifications
You must be signed in to change notification settings - Fork 185
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
关于查询宿主环境是否支持某个特定的事件能力的提案讨论 #241
Comments
|
赞👍~
|
|
看起来挺有用的,在标准层面感觉和HTML/DOM关系比较大,可以考虑在这个issue里先讨论一下这个提案的使用场景和建议语法,初步成型后提到DOM标准? 这是一个DOM的新特性提案的例子,可供参考(不过这个提案比我们讨论的这个要复杂得多):https://github.com/mfreed7/declarative-shadow-dom/blob/master/README.md |
其实在无论是在 Event 上扩展 还是 navigator 上扩展,都是一个全局的查询能力,只是一个能力归属放在哪个 global 对象下更合适的问题。而对于某些 element 的特定事件,上述 @wssgcg1213 比如 的 InputEvent 能力,属于某个 element 的特定能力,所以如果提供 element 级别的查询,使开发者可以感知某个具体的 element 支持哪些事件。 |
考虑到特定元素的一些特有事件,以及 window 上的 onload 事件等,更倾向放在 EventTarget 上提供一个基础能力。继承 EventTarget 的 class 如果有自己的特有事件,可以覆盖该方法提供特有的一些事件判断。 |
谢谢 @answershuto 。简单看了一下你的提案,有两点建议:
|
感谢 @xfq 的宝贵建议,相关内容我已经修改以及增加在文档中了。 https://github.com/answershuto/isEventSupports#other-considerations |
感谢 @answershuto 如果其他同学没有新的comment,我觉得可以在DOM提一个issue了:https://github.com/whatwg/dom/issues Issue里可以简单介绍一下这个提案,再加一个到 https://github.com/answershuto/isEventSupports 的链接。 |
另外,提案有一个小typo:最后的input will return ture应该是input will return true |
感谢 @xfq ,相关内容已修改。 |
Hi All,
这个 issue 抛出一个关于事件的提案,我希望能够在 Web 中文兴趣组内先进行一些讨论,收集意见和建议,最终目标是能够贡献此标准。
提案期望解决 Web 标准下具有根据“特征判断”来获取当前宿主环境本身是否提供某个事件能力,以此来得知是否可以在当前宿主环境下使用某个具体的事件能力。
举个例子:
以 dblclick 事件为例,在移动端上,safari、firefox 等浏览器支持,但是 chrome、android WebView 不支持,这时如果我们没有“特征判断”则需要像下述那样编码。
显然,通过“环境判断”我们可以去实现相关功能,但是当历史版本以及浏览器种类繁多带来了非常多的判断条件。
Web 标准中,所有的 element 都是继承自 eventTarget,开发者无论监听何种事件都应该正常监听。但是开发者本意是监听一个来自宿主环境的 dispatch 时,宿主环境本身没有相关功能,就会导致功能缺失,而开发者无法很好地在上层进行判断。
我们期望通过“特征判断”来判断是否当前宿主环境提供某个特定事件,以解决上述问题。
我暂时想了三种方案,希望抛出来大家讨论一下:
我希望讨论的内容
The text was updated successfully, but these errors were encountered: