Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaScript程序员应该避免在移动设备上使用HTML输入按钮吗?_Javascript_Html - Fatal编程技术网

JavaScript程序员应该避免在移动设备上使用HTML输入按钮吗?

JavaScript程序员应该避免在移动设备上使用HTML输入按钮吗?,javascript,html,Javascript,Html,在HTML中,我习惯于看到使用输入按钮调用JavaScript函数,例如: <input type="button" value="Click Here" onclick="myclick()"></TD> 由于我不熟悉JavaScript,我注意到JavaScript程序员使用了更多类似的东西: $(document).ready(function(){ $("#tapDiv").hide(); ... ... ...

在HTML中,我习惯于看到使用输入按钮调用JavaScript函数,例如:

<input type="button" value="Click Here" onclick="myclick()"></TD>

由于我不熟悉JavaScript,我注意到JavaScript程序员使用了更多类似的东西:

$(document).ready(function(){
            $("#tapDiv").hide();
...
...
...             
                "onload": function () {
                    $("#tapDiv").show().click(function(){
                        $("#tapDiv").hide();
<div id="tapDiv" style='padding:10px;'>Tap to start.</div>
$(文档).ready(函数(){
$(“#tapDiv”).hide();
...
...
...             
“onload”:函数(){
$(“#tapDiv”).show()。单击(函数(){
$(“#tapDiv”).hide();
点击开始。
对于移动设备,是否最好不要使用HTML输入按钮,而是像上面的JavaScript那样使用?我习惯于在HTML中使用输入按钮来与PHP程序一起使用,但我注意到在JavaScript中程序员似乎不太使用它们,尤其是在移动设备上

这是有原因的吗?这能让我更好地控制网页上的事件吗?这对游戏开发更好吗?我在学习JavaScript和jQuery时应该注意的其他好处?

按钮元素被设计为可与之交互。默认情况下,按钮元素具有许多优点,例如外观和感觉通知用户可以单击按钮,标签顺序中的自然位置使不使用定点设备/触摸屏的人可以与按钮元素交互,以及屏幕阅读器可以用来告诉用户的所有语义至少他们可以激活一些东西

Div元素是通用的块容器。它们的工作是在没有更好语义的元素存在时包含内容


也就是说,您提供的两个代码示例还有另一个显著的区别

用JavaScript而不是内在事件属性绑定事件处理程序通常被认为是最佳实践

  • 它避免了一些错误
  • 它允许您使用IIFEs来确定函数的范围,以避免创建全局变量(从而避免名称空间冲突)

这些都不是移动设备所特有的,也不是因为移动设备的存在而改变的

按钮元素被设计为可与之交互。默认情况下,按钮元素具有许多优点,例如外观和感觉通知用户可以单击按钮,标签顺序中的自然位置使不使用定点设备/触摸屏的人可以与按钮元素交互,以及屏幕阅读器可以用来告诉用户的所有语义至少他们可以激活一些东西

Div元素是通用的块容器。它们的工作是在没有更好语义的元素存在时包含内容


也就是说,您提供的两个代码示例还有另一个显著的区别

用JavaScript而不是内在事件属性绑定事件处理程序通常被认为是最佳实践

  • 它避免了一些错误
  • 它允许您使用IIFEs来确定函数的范围,以避免创建全局变量(从而避免名称空间冲突)


所有这些都不是移动设备特有的,也不会因移动设备的存在而改变。

否。对于语义值,您应该明确使用
甚至
作为按钮,而不是
div
元素。当然,您可能需要对它们进行不同的样式设置。但是,是的,您应该将事件侦听器放在JS文件中,而不是使用e> onclick属性(顺便说一句,这些属性都与移动设备无关。这也是桌面浏览器的最佳实践)@Bergi所以事件侦听器对移动设备最重要?@Bergi是的,将onclick放在js+jquery中,以便以后调试页面的任何人(甚至你)都可以使用将永远找不到真正的侦听器。但是您将clear UI存档,不使用js code.No。对于语义值,您绝对应该使用
甚至
作为按钮,而不是
div
元素。当然,您可能需要对它们进行不同的样式设置。但是,是的,您应该将事件侦听器放在js文件中,而不是使用
onclick
html中的属性。(顺便说一句,这些都与移动设备无关。这也是桌面浏览器的最佳实践)@Bergi所以事件侦听器对移动设备来说最重要?@Bergi Yeah点击js+jquery内部,以便以后调试页面的任何人(可能甚至是你)永远不会找到真正的侦听器。但是你可以归档清晰的UI W/O JS代码。因为我是JavaScript的新手,你能给我指点一下JavaScript中绑定事件处理程序的一个工作实例吗?你认为这是一个最佳实践。那么,对于一个按钮上的绑定事件处理程序来说,什么是等价的,因为它不应该点击?wardCoast-是(如果您没有像问题示例中那样使用jQuery)但不信任W3Studio,它们经常出错或误导。因为我是JavaScript的新手,请给我指点一下JavaScript中绑定事件处理程序的一个工作实例,你认为这是一个最佳实践?那么,对于一个按钮上的绑定事件处理程序来说,什么是等价的,因为它不应该单击?这是吗?EdwardCoast-是的(如果您没有像问题中的示例那样使用jQuery),但是不要相信W3Schools,它们经常是错误的或误导的。