- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在使用 PJAX-Standalone为网站加载页面,我想在加载新内容时添加淡出/淡入过渡,但是,我不确定如何最好地实现这一点。
PJAX 文档描述了“回调”,有没有一种方法可以将淡入淡出过渡附加到其中一个,以便在新内容淡入时现有内容淡出?我作为 jQuery/Javascript 菜鸟首先进入这个领域,但我渴望学习,所以非常感谢任何帮助/建议!
这是我包含在我的 wrapper.php 中的内容:
// PJAX links!
pjax.connect({
'container': 'content',
'success': function(event){
var url = (typeof event.data !== 'undefined') ? event.data.url : '';
console.log("Successfully loaded "+ url);
},
'error': function(event){
var url = (typeof event.data !== 'undefined') ? event.data.url : '';
console.log("Could not load "+ url);
},
'ready': function(){
console.log("PJAX loaded!");
}
});
最佳答案
可能最简单的方法是隐藏包装 #content
div 的容器,然后在加载内容后淡入淡出。淡出内容然后淡入新内容会有点困难,实际上你不会通过淡出获得太多好处,pjax 容器加载内容的速度会比你淡出快,所以它看起来很傻使其淡出。既然你在下面的评论中说你可以使用 jquery,我就使用它,因为它最简单。所以我要做的是用一个容器包装你想要淡入的内容,并给它一个 #content-container
的 id。如果您使用的标记类似于 github 页面上的标记,您可以使用如下内容:
<div id='content-container>
<div class='container'>
<div id='content' class='col-sm-8'>
<?php echo $contents; ?>
</div>
<div class='col-sm-4'>
... sidebar stuff ...
</div>
</div>
<footer>
... footer stuff ...
</footer>
</div>
您的 javascript 和 jquery 代码将如下所示:
// PJAX links!
pjax.connect({
'container': 'content',
'success': function(event){
var url = (typeof event.data !== 'undefined') ? event.data.url : '';
console.log("Successfully loaded "+ url);
},
'error': function(event){
var url = (typeof event.data !== 'undefined') ? event.data.url : '';
console.log("Could not load "+ url);
},
'ready': function(){
console.log("PJAX loaded!");
},
'beforeSend': function(e){
$('#content-container').hide();
},
'complete': function(e){
$('#content-container').fadeIn(1000);
}
});
所以发生的事情是我们将 #content-container
隐藏在 pjax beforeSend
上,然后像这样在 pjax complete
上淡入淡出在文档的回调部分说。您可以通过更改显示 .fadeIn(1000)
的数字来控制它淡入的速度,将其更改为 800 会使其更快。
无论如何,如果您有任何问题,请在下面的评论中告诉我,希望这不会太困惑。
关于javascript - 如何为 pjax-standalone 添加淡入/淡出效果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38679326/
我有这样的代码: $('.btnRemove').on('click', function(){ var id = $(this).attr('id');
我正在使用 https://github.com/rails/pjax_rails . 我想将我的链接放在页面的“永久”部分。 IE。在我的布局中,我有 然后在 View 内部: Content t
我正在使用 pjax 并且我了解它是如何工作的。我使用 JS 处理所有 pjax 逻辑,在某些情况下,我想“伪造”新页面加载,而 pjax 不实际获取任何数据。 我的问题是,如何在 pjax 不实际连
我正在尝试在 pjax 请求后重新加载 alerts 容器。我的目标是在发出任何 pjax 请求后重新加载容器的代码,因此我不必每次都单独调用它。 我有以下代码: $(document).on('pj
在yii2中使用pjax,就像: 'btn btn-lg btn-primary']);?> Current time: 但是如果超链接不在 中怎么办? ,就像: Click to re
我正在尝试在 yii2 项目中使用 Pjax 小部件。 我的目标是用一些内容更新 div #formsection。 我的代码:查看 $name): ?> $id],
所以 github 使用“defunkt 的”PJAX 模块(https://github.com/defunkt/jquery-pjax#events),我正在制作一个需要监听事件 pjax:end
我有一个表单,当单击类应该切换到启用/禁用的图标时。问题是,当最初启用类并切换到禁用时,一切工作正常,但当我以相反的顺序从禁用切换到启用时,然后我只转到这个链接‘/请求/’.$id.‘/Access’
我有带有标签的页面(实际上是由父 pjax 处理的链接)。它通过 pjax 调用加载选项卡内容。 在其中一个选项卡中,我有一个位于 pjax 容器内的 gridview。所以这使它成为一个嵌套的。 问
我只想知道如何重新加载多个 pjax?这是我的代码 $.pjax.reload({container:"#con_camp"}); $.pjax.reload({con
我们的某些链接由PJAX包装。当用户单击PJAX链接时,服务器仅返回HTML的必需部分。 如果我执行以下操作: 单击PJAX链接 单击简单链接 按下返回按钮 浏览器将显示由PJAX请求返回的内容。 H
我刚刚发现pjax我发现它非常棒。如果我理解正确的话,它是 AJAX,但没有它的问题(完全可降解,使用它时页面的 URL 和标题会改变,与搜索机器人兼容......)。 但是我很好奇它是如何工作的?我
我正在我的一个项目中使用 pjax。我在新选项卡/窗口中打开页面时遇到问题。 pjax 似乎会在同一窗口中打开除外部网站链接之外的所有链接。 Pjax代码 $(function(){ $(docu
我想使用 Pjax 刷新 gridview 但不知何故它不起作用。这是代码: _search.php registerJs(" $('#btnAjaxSea
我的 pjax 不起作用,因为我看到时间发生了变化.. 你能发现我的代码有问题吗? $('a[data-pjax]').pjax() GO"; $date = date("Y-m-d
我在我正在构建的站点中使用 Pjax,经过搜索之后,我一直无法找到保存自定义数据以供以后检索的方法。 这是我的代码: var myData = { tst1: "some value"
我正在使用 pjax,我想将其配置为呈现页面(替换 html),就好像一切正常一样,即使页面响应非 200 代码(404、500)。 我的 404 和 500 页面已调整为看起来不错,并且我不需要
我已经在我的测试站点上启动并运行了 PJax - 它很有用。然而,它严重依赖于大量的 javascript 小部件,因此会泄漏内存。 因为我现在没有时间重新编写每个小部件,所以我认为一个简单的解决方案
我的一个应用程序使用 PJAX 样式导航,这意味着我们不是加载整个页面,而是使用 AJAX 加载部分页面,然后使用 HTML5 history/pushState API 更新浏览历史记录。 以前我使
如何创建可以包含多个容器的 Pjax?我在这个链接上试过这个 Pjax: https://github.com/defunkt/jquery-pjax/blob/master/README.md 这是
我是一名优秀的程序员,十分优秀!