React 中的 JQuery 移动组件

2023-12-25

“React 中的 JQuery 移动组件”

我对这个概念还很陌生,仍然需要弄清楚。我构建了一个用于移动目的的应用程序,并决定将其包装在 React 组件中。我的代码:

索引.html

<!DOCTYPE html>

<html lang="de" xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta charset="utf-8" />
    <title>shounds</title>

    <link rel="stylesheet" type="text/css" href="css/jquery.mobile.squareui.css" />
    <script src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
    <script src="http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>

    <script src="./ext/react.js"></script>
    <script src="./ext/jsx-transform.js"></script>
    <script src="//fb.me/react-with-addons-0.11.0.js"></script>
</head>
<body data-theme="e">
    <div id="container" >
        <!--<div data-role="page" id="login"><div data-role="header" id="loginHeader"></div></div>-->
    </div>
    <script type="text/jsx" src="./comp/main.js"></script>
</body>
</html>

main.js //反应组件

var App = React.createClass({
    render: function () {
        return Page({id: 'login'});
    }
})

var Page = React.createClass({
    constants: { dataTheme: 'e' },
    render: function () {
        return React.DOM.div({ id: this.props.id + 'Page', 'data-role': 'page', 'data-theme': this.constants.dataTheme },
            Header({ dataTheme: this.constants.dataTheme, id: this.props.id }))
    }
})

var Header = React.createClass({
    render: function(){
        return React.DOM.div({'data-role': 'header', 'data-theme': this.props.dataTheme, id: this.props.id+'Header' })
    }
})


// Render application.
    React.render(App(null), document.getElementById('container'))

DOM 按预期在容器 div 中创建。

这是我的问题:

JQM 可能不知道 React 创建的虚拟 DOM,并在容器 div 之外自行创建一个初始页面。 即使 DOM 已正确创建,它也不会显示为带有标题的 JQM 页面。

有人经历过同样的事情吗?

提前致谢。

编辑:如果它有任何帮助->这是在运行时创建的

    <head></head>
    <body class="ui-mobile-viewport ui-overlay-a" data-theme="e">
        <div class="ui-page ui-page-theme-a ui-page-active" data-role="page" data-url="/E:/dev/workspace/visual/shounds/index.html" tabindex="0" style="min-height: 483px;">
            <div id="container">
                <div id="loginPage" data-reactid=".0" data-theme="e" data-role="page">
                    <div id="loginHeader" data-reactid=".0.0" data-theme="e" data-role="header"></div>
                </div>
            </div>
            <script src="./comp/main.js" type="text/jsx"></script>
        </div>
        <div class="ui-loader ui-corner-all ui-body-a ui-loader-default"></div>
    </body>

</html>

Update

应用以下样式来删除页面中的额外高度并使其适合viewport, since 页面容器不再是body.

.ui-mobile body {
  height: auto; /* reset height */
}
#container {
  height: 99.9%; /* new viewport (pagecontainer) */
}

第一步,您必须通知框架(jQuery Mobile)您想要使用不同的页面包装器 (:mobile-pagecontainer) 比默认值body。另外,您应该禁用自动初始化jQuery Mobile 的直到React渲染页面并推入 DOM。这些步骤应该执行于mobileinit这是 jQuery Mobile 初始化之前触发的第一个事件。另请注意,应将其放置在 jQuery Core 之后、jQuery Mobile 之前head.

$(document).on("mobileinit", function(e, data) {
  $.mobile.autoInitializePage = false; /* disable auto-initialization */
  $.mobile.pageContainer = $("#container"); /* set new "pagecontainer" */
});

之后,运行你的React代码后跟$.mobile.initializePage();初始化框架。

Demo http://plnkr.co/edit/ymF5I5H4VXaLajyEWTx7?p=preview

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

React 中的 JQuery 移动组件 的相关文章

随机推荐

  • 在 cakephp ssl 站点中重定向到 http 而不是 https

    我开发了一个 cakephp 网站 所有页面都应使用 ssl 它按预期工作 除了当我在控制器中使用重定向时 它重定向到 http subdomain domain com 而不是 https subdomain domain com con
  • SQL 更新行数

    我有一个带有列标识 1590 个值 的表 serviceClusters 然后我有另一个表 serviceClustersNew 其中包含 ID 文本和注释列 在此表中 我有一些文本和注释值 ID 始终为 1 下面是该表的示例 1 虚拟1
  • Postgres 与 Java 我无法插入数据

    我尝试使用 Java 向我的 postgres 数据库插入数据 我的本地数据库有默认配置 我想将一些数据放入表中 但遇到一些问题 这是代码 import java sql Connection import java sql DriverM
  • BindingExpressionBase 在自定义 MarkupExtension 中为 null

    我有一个CustomMarkupExtension班级 绑定正在工作 null 但是BindingExpressionBase总是null 有人可以解释一下为什么吗 我需要得到BindingExpressionBase打电话给UpdateT
  • 我可以为 html 元素设置默认的 css 类吗

    如果我定义了一个 css 类 是否可以将该类设置为 html 元素的默认类 为了澄清这一点 我希望分解出类的定义 以便它可以被一个或多个 css 选择器使用 或者在 html 中谨慎应用 例如 myclass float right h1
  • Actionscript 3.0:范围

    教程通常不涉及 Actionscript 中的范围 您能给我指出一些文档和 或解释一下我应该了解什么吗 我想避免由于某些类在某些地方不可见而引起的问题 这些应该有帮助 功能范围 http livedocs adobe com flex 3
  • 调整应用程序窗口大小时,如何调整应用程序内的图像大小?

    当我最大化应用程序时 JPanel 内的图像不会随之调整大小 如何在窗口最大化时调整 JPanel 及其内容 编辑 我正在使用 BufferedImage 这是一个开放式问题 您想要缩放以填充或缩放以适合区域还是您不关心纵横比 填充比例和适
  • South 忽略 Python / Django 中字段默认值的更改

    为什么 South 无法识别 Python 模型中默认字段值的更改 例如 以向南迁移的现有模型为例 class MyFamily models Model family size models IntegerField verbose na
  • Phonegap 谷歌分析根本不跟踪

    这是我的 main js 文件 Google Analytics function var ga document createElement script ga type text javascript ga async true ga
  • 在运行时更改 DataGridView 标题文本

    我能够在运行时更改所有控件文本 预计我的 DataGridViews 标题文本不会更改 colName HeaderText FormOtherRes Crc I tried DataGridView1 Refresh 但这没有用 当我调试
  • 不在数据构造函数范围内

    我有两个 hs 文件 一个包含新类型声明 另一个使用它 首先 hs module first where type S SetType data SetType S Integer 第二个 hs module second where im
  • 维基百科是否允许通过 Google App Engine 获取 URL?

    我正在编写一个 Python Web 应用程序 我计划在其中利用维基百科 当尝试一些 URL 获取代码时 我能够获取 Google 和 Facebook 通过 Google App Engine 服务 但是当我尝试获取 wikipedia
  • 从 XML 中选择节点,其属性之一包含特定字符串

    我试图选择在其属性之一中包含给定字符串的节点 但似乎我只能在某个属性上执行此操作 var tempUsers xmlDocument selectNodes Users contains Id TEXT 我想我可以写一些其他的东西来代替 I
  • java web start 应用程序可以在没有 .jnlp 文件的情况下存在吗? [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 正如中所解释的Java网络启动 ht
  • jQuery 模糊() 不起作用?

    这里完全被难住了 尝试一些很简单的事情 但它不起作用 input input1 textarea input1 focus function this addClass input2 removeClass input1 input inp
  • canvasContext.fillRect 在 Firefox 中抛出 NS_ERROR_FAILURE 异常

    我试图在页面顶部绘制一个巨大的画布矩形 某种灯箱背景 代码非常简单 var el document createElement canvas el style position absolute el style top 0 el styl
  • Future.get() 总是被 InterruptedException 中断

    我在 Java 中的 Future get 遇到了一个奇怪的问题 它总是返回一个 InterruptedException 但奇怪的是异常的原因是 null 所以我不知道是谁打断了我 情况变得更糟 因为我在调用 get 之前进行检查 而 F
  • 如何从 Spring MVC 控制器返回对象以响应 AJAX 请求?

    我必须从控制器返回员工列表以响应 jQuery AJAX 请求 我该怎么办呢 我的控制器 RequestMapping phcheck public ModelAndView pay RequestParam empid int empid
  • Linq:在进行投影时设置属性

    我正在做一个简单的 GroupBy 获取第一个元素 但我想修改每个结果的一个属性 class M public string Name get set public int NOfPeopleWithTheSameName get set
  • React 中的 JQuery 移动组件

    React 中的 JQuery 移动组件 我对这个概念还很陌生 仍然需要弄清楚 我构建了一个用于移动目的的应用程序 并决定将其包装在 React 组件中 我的代码 索引 html