为啥我的 jQuery Mobile 代码不起作用?

Posted

技术标签:

【中文标题】为啥我的 jQuery Mobile 代码不起作用?【英文标题】:Why doesn't my jQuery Mobile code work?为什么我的 jQuery Mobile 代码不起作用? 【发布时间】:2018-05-23 13:18:58 【问题描述】:

我不确定如何让任何 jQuery 移动事件(如点击或 touchstart)在我的移动设备上工作。当我在桌面上运行它时,一切正常。使用 PhoneGap 构建 apk。

根据 jQuery 移动文档,代码应该可以在移动设备上运行。也尝试在移动设备上调试它,似乎 jquery 甚至没有加载...

* 
  margin: 0;
  padding: 0


body 
  background-color: red;


h1 
  position: absolute;
  right: 30px;
  padding: 30px;
  color: white;
  text-shadow: none;


#hello 
  z-index: 3;
  background-color: #222222;


#hello > div 
  height: 200px;
  width: 200px;
  background-color: green;


.ui-page  background:transparent; 

.ui-input-text 
  border: none;



<!-- begin snippet: js hide: false console: true babel: false -->
<!DOCTYPE html>
<html>

<head>
    <meta charset="utf-8" />
    <meta name="format-detection" content="telephone=no" />
    <meta name="msapplication-tap-highlight" content="no" />
    <meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width" />
    <meta http-equiv="Content-Security-Policy" content="default-src * 'unsafe-inline'; style-src 'self' 'unsafe-inline'; media-src *" />
    <link rel="stylesheet" type="text/css" href="css/index.css" />
    <link rel="stylesheet" type="text/css" href="jquery-mobile/jquery.mobile-1.4.5.min.css" />
    <script  type="text/javascript" src="jquery-mobile/jquery-3.2.1.min.js">
    <script type="text/javascript" src="jquery-mobile/jquery.mobile-1.4.5.min.js"></script>
   </script>

    <title>Hello World</title>
</head>

<body>
    <div class="app" data-role='page'>
        <h1>PhoneGap</h1>
        <div id="deviceready" class="blink">
            <p class="event listening">Connecting to Device</p>
            <p class="event received">Device is Ready</p>
        </div>
    </div>



    <script type="text/javascript" src="cordova.js"></script>
    <script type="text/javascript" src="js/index.js"></script>
    <script type="text/javascript">
        app.initialize();
    </script>


    <script type="text/javascript">
      $(document).ready(function() 
        $('h1').bind("tap", function() 
          $(this).css(color: 'red');

        );
      );

      /* works
      $(document).ready(function() 
        $('h1').on("click", function() 
          $(this).css(color: 'red');

        );
      );
    </script>
</body>

</html>

【问题讨论】:

两次包含库.. @pedram 即使删除 jquery 也不起作用 不,这只是一个通知。 【参考方案1】:

在 Cordova 或 PhoneGap 应用程序中使用 jQuery,您将在您正在发布的应用程序的 www 目录中拥有它,然后像这样包含它,例如:

<script type="text/javascript" src="js/jquery.min.js"></script>

而不是来自 cdn,或远程地址,例如:https://code.jquery.com

【讨论】:

Zamijenio sam CDN, ali i dalje radi samo jQuery。 jQuery 移动 uopce ne radi。 Mozes li molim te pogledat sta je greska, update-o sam code gore。 Radim 应用程序,你是我的问题。 Trebaju mi touch 事件 ej,, pan ne treba ti jQuery Mobile da bi koristio touch evente。 Sve evente poput, touchstart, touchmove itd mozes normlano sa obicnim jQueryem koristiti, tako da smao makni jQuery mobile i neka ostane jQuery u source-u Nemogu vjerovat da je 到生物问题。 Da jQuery Mobile uopce nije bio potreban。 Znaci 3 dana se vec patim, sve zivo sam probo... Uskoro moram app napravit za jednu Firmu,一个 dosad sam samo 网站-ove pravio。 Nikad nisam radio sriktno na app projektu。 Doslovno si mi spasio zivot :D Hvala ti!!

以上是关于为啥我的 jQuery Mobile 代码不起作用?的主要内容,如果未能解决你的问题,请参考以下文章

jQuery Mobile 在 WebView 中不起作用

除非我刷新,否则 jQuery mobile 中的 JavaScript 不起作用

Jquery mobile collapsible在ajax get中不起作用

jQuery Mobile 滑动事件不起作用

为啥这个 jQuery 在我的 Sharepoint 页面上不起作用?

为啥我的 jQuery on click 事件不起作用?