我试图从棘轮实现push.js引擎:
http://maker.github.com/ratchet/#push
我从这里下载了棘轮文件:
http://maker.github.com/ratchet/ratchet.zip
并使用apache来服务所有js,css和html.所有文件都在同一目录中.
这是我的one.html文件:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Ratchet template page</title>
<!-- Sets initial viewport load and disables zooming -->
<meta name="viewport" content="initial-scale=1, maximum-scale=1, user-scalable=no">
<!-- Include the compiled Ratchet CSS -->
<link rel="stylesheet" href="ratchet.css">
<!-- Include the compiled Ratchet JS -->
<script src="ratchet.js"></script>
</head>
<body>
<!-- Make sure all your bars are the first things in your <body> -->
<header class="bar-title">
<h1 class="title">one.html</h1>
</header>
<!-- Wrap all non-bar HTML in the .content div (this is …Run Code Online (Sandbox Code Playgroud) 因此,在Ratchet 2.0.2的GitHub文档中,我发现了以下声明.
包含JavaScript的脚本标记不会在使用push.js加载的页面上执行.如果要将事件处理程序附加到其他页面上的元素,则文档级事件委派是一种常见的解决方案.
有人可以请详细说明如何<script>在加载后获得自定义执行Push.js?
在我的第一页上,我有一个表视图,其中有几个指向其他页面的链接,其中一个链接指向第二个页面,其上有一个Twitter Feed小部件.
<li class="table-view-cell media">
<a class="navigate-right" href="Twitter.php" data-transition="slide-in">
<span class="media-object pull-left icon icon-person"></span>
<div class="media-body">
Twitter Feed
</div>
</a>
</li>
Run Code Online (Sandbox Code Playgroud)
第二页仅包含twitter feed小部件代码.当我直接浏览到这个页面(没有被加载Push.js)时,一切都正确加载,但是当它通过Push.js加载时,脚本不会被执行.
有人可以解释我需要做什么才能让这个脚本在加载后执行Push.js?我搜索了Google,Stack Exchange和Github\Ratchet问题,但未能找到如何实现这一目标的好例子.
一种解决方案是添加data-ignore="push"到链接,但我想知道如何处理WITH push.js.
<div class="content">
<a class="twitter-timeline" href="https://twitter.com/XXXX" data-widget-id="XXXX">Tweets by XXX</a>
</div>
<script>
!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+"://platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");
</script>
Run Code Online (Sandbox Code Playgroud) 我用Ratchet.我的phonegap应用程序有两个页面,包含jquery.js,ratchet.js和blockui.js(基于jQuery).
index.html的:
<script>$.blockUi()</script>
<a href="2.html" data-transition="slide-in">2.html</a>
Run Code Online (Sandbox Code Playgroud)
2.HTML:
<a href="index.html" data-transition="slide-out">index.html</a>
Run Code Online (Sandbox Code Playgroud)
起初$.blockUi()运行正常.然后我按下第一页的链接.在我按下第二页上的链接后,没有JavaScript运行.我该怎么办?
我在CodeIgniter之上构建了一个PHP应用程序,它通过移动到控制器到控制器(.php文件)而不是从一个静态页面移动到另一个(.html文件).
问题:链接拒绝工作.
我不确定这是否是问题,但我已经浏览了文档,它似乎是与源代码相比唯一的例外 - 我正在调用.php文件而不是.html文件.
在您询问之前 - 在我的系统上,booknav是一个可行的控制器,在点击它时加载一个可行的视图.
另外 - 我可以看到这里的片段实际上正在工作.我正在尝试调试这个 - 为什么这里的代码片段会发送一个链接,而我的服务器上的等效代码却没有?
这是我最终的HTML文件:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Project</title>
<!-- Including Ratchet CSS + JS + Custom CSS !-->
<meta name="viewport" content="initial-scale=1, maximum-scale=1, user-scalable=no, minimal-ui">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-status-bar-style" content="black">
<link href="//cdnjs.cloudflare.com/ajax/libs/ratchet/2.0.2/css/ratchet.css" rel="stylesheet" />
<script src="//cdnjs.cloudflare.com/ajax/libs/ratchet/2.0.2/js/ratchet.js"></script>
</head>
<body>
<header class="bar bar-nav">
<h1 class="title">Select Your Book</h1>
</header>
<div class="content">
<div class="card">
<ul class="table-view">
<li class="table-view-cell">
<a class="navigate-right" href="booknav" data-transition="slide-in">
<span><strong> Book 1</strong></span>
</a>
</li> …Run Code Online (Sandbox Code Playgroud)我正在用Ratchet构建一个移动网络应用程序.我要做的是打开一个模态,填写一个表单,按一个按钮然后保存并关闭模态.
我可以用它的文档按钮关闭一个模态,我也可以保存表单字段......但是如何一起做这些事情?在Ratchet的文档中,没有解释如何使用JavaScript手动关闭模式.
我正在使用Ratchet和AngularJS,所以按钮调用一个Angular函数,我应该在其中关闭模态.