触摸打孔不起作用

时间:2014-02-19 15:27:52

标签: javascript jquery html5 jquery-mobile touch-punch

我正在使用jQuery Mobile制作HTML5应用程序,我刚刚为应用程序添加了触控打孔功能。网站(http://touchpunch.furf.com/)在我的手机中完美运行,但当我尝试将相同的技术应用到我的应用程序中时,可拖动功能无法正常工作。

这是我的代码头,所以你们可以检查我是否插入了正确的jquery源代码。

<head> 
<title>Parking Lot App</title>
<meta name="viewport" content="width=device-width, initial-scale=1" />
<link rel="stylesheet" href="themes/florida_tech.min.css" />
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.3.1/jquery.mobile.structure-1.3.1.min.css" />
    <script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>
    <script src="http://code.jquery.com/mobile/1.3.1/jquery.mobile-1.3.1.min.js"></script>

<script src="jquery.ui.touch-punch.min.js"></script>   <!-- TOUCH PUNCH -->

</head>

这是显示内容的代码。它只是一个'div'中有2个绿色块的图像

  <div data-role="content" style="margin:0px; padding:0px; border:0px">

  <div id="draggable" class="ui-widget-content" style="position:relative; height: 347px">
      <div style=" position: absolute; top: 0px; left: 0px">    
           <img src="style/pic.png" alt="Parking Lot Map"/>

      </div>
      <div style="background-color:green; width:17px; height:35px; z-index: 2; position: absolute; top: 31px; left: 81px ">
                                &nbsp
      </div>
      <div style="background-color:green; width:17px; height:35px; z-index: 2; position: absolute; top: 31px; left: 102px ">
                                &nbsp
      </div>

  </div>

1 个答案:

答案 0 :(得分:3)

也许jQueryUI库和jQuery Mobile库相互冲突。 我从您的代码中创建了示例代码:

<html>
 <head>
  <title>Parking Lot App</title>
  <meta name="viewport" content="width=device-width, initial-scale=1" />
  <!--<link rel="stylesheet" href="themes/florida_tech.min.css" />-->
  <!--<link rel="stylesheet" href="http://code.jquery.com/mobile/1.3.1/jquery.mobile.structure-1.3.1.min.css" />-->
  <script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
  <script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>
  <script src="http://code.jquery.com/mobile/1.3.1/jquery.mobile-1.3.1.min.js"></script>
  <script src="jquery.ui.touch-punch.min.js"></script>
 </head>
 <body>
  <div data-role="content" style="margin:0px; padding:0px; border:0px">

   <div id="draggable" class="ui-widget-content" style="position:relative; height: 347px">
    <div style=" position: absolute; top: 0px; left: 0px"> 
     <img src="style/pic.png" alt="Parking Lot Map"/>
    </div>
    <div style="background-color:green; width:17px; height:35px; z-index: 2; position: absolute; top: 31px; left: 81px ">&nbsp</div>
    <div style="background-color:green; width:17px; height:35px; z-index: 2; position: absolute; top: 31px; left: 102px ">&nbsp</div>
   </div>
  </div>
  <script>
   $('#draggable').draggable();
  </script>
 </body>
</html>

此代码适用于我的iPad mini(iOS6)和笔记本电脑浏览器(Chrome,Safari等)。在上面的代码中,我注释掉了样式表(“themes / florida_tech.min.css”和“http://code.jquery.com/mobile/1.3.1/jquery.mobile.structure-1.3.1.min.css”)。在我的环境中,“jquery.mobile.structure-1.3.1.min.css”可能与jQueryUI冲突。当我评论这个样式表时,一切都运作良好。