切换广场全屏模式
回答
我只是要添加到@ Ohgodwhy的回答是:
得到的Galleria实例并使用API是使用Galleria.ready功能的最佳方式:
Galleria.ready(function() {
var gallery = this; // galleria is ready and the gallery is assigned
$('#fullscreen').click(function() {
gallery.toggleFullscreen(); // toggles the fullscreen
});
});
或者,您可以通过$.data
对象访问实例如果您知道该画廊被初始化:
$('#fullscreen').click(function() {
$('#galleria').data('galleria').toggleFullscreen(); // toggles the fullscreen
});
我假设你有ID为“fullsc链接/按钮reen“,画廊在ID'galleria'。
从Galleria文档。
.enterFullscreen([callback])
这将以全屏模式设置图库。它会临时处理一些文档样式并炸毁画廊以覆盖浏览器屏幕。请注意,它只会填充浏览器窗口,而不是客户端屏幕(JavaScript不能这样做)。
.toggleFullscreen([callback])
切换全屏模式。
如果您需要对这些使用的进一步解释,请不要犹豫,问。
谢谢,但问题是我不明白如何使用这个..换句话说,我应该从哪里调用(哪个对象?它是在画廊的jQuery选择器?因为我没有定义...)除此之外,我正在寻找一些自动添加全屏按钮的东西,就像在环球免税店的首页上一样......任何想法? – 2012-02-15 22:51:50
我在文档中解释的基于它的可用性的假设是 - > 首先,我们需要有一个触发事件,您可以使用jquery进行此操作。我们可以使用单击事件$(“element”)。click(),或者我们可以在文档加载$(function(){)上触发,无论哪种方式,必须输入的全屏将成为图库的元素。因此,如果我们的图库的ID为#gallery,那么它将是$(“element”)。click(function(){$(“#gallery”)。enterFullscreen([callback]);}); $(“element “)就是你想要成为触发器动作的任何东西,如果你有一个输入ID为#button1,那么$(”#button1“)。 – Ohgodwhy 2012-02-16 05:20:02
@Ohgodwhynot,你需要做'$(”#gallery“) ''david(';';' – David 2012-02-16 10:59:34
这应该工作:
JS
Galleria.loadTheme('http://aino.github.com/galleria/demos/categories/themes/classic/galleria.classic.min.js');
$('#galleria').galleria();
Galleria.ready(function() {
var gallery = this;
this.addElement('fscr');
this.appendChild('stage','fscr');
var fscr = this.$('fscr')
.click(function() {
gallery.toggleFullscreen();
});
this.addIdleState(this.get('fscr'), { opacity:0 });
});
CSS
.galleria-fscr{
width:20px;
height:20px;
position:absolute;
bottom:0px;
right:10px;
background:url('fullscreen.png');
z-index:4;
cursor: pointer;
opacity: .3;
}
.galleria-fscr:hover{
opacity:1;
}
哪里fullscreen.png
是您所选择的适当的图像。
我使用:
lightbox: true,
之前Galleria.run()
。这允许您在点击图库中的图像后显示全屏叠加。
理查德的方法工作得很好。
你也可以做它用时的就绪功能扩展广场:
JS
Galleria.run('.galleria', {
// configure
autoplay: true,
lightbox: true,
idleMode: true,
// extend theme
extend: function() {
var gallery = this; // "this" is the gallery instance
//fullscreen button
this.addElement('fscr');
this.appendChild('stage','fscr');
var fscr = this.$('fscr').click(function() {
gallery.toggleFullscreen();
});
// this.addIdleState(this.get('fscr'), { opacity:0 });
}
});`
如果你想使用一个fontAwesome图标最大化图标即可实现它如下(其它CSS样式见理查德的职位):
CSS
.galleria-fscr:before {
content: "\f065"; /* char code for fa-expand */
position: absolute;
font-family: FontAwesome;
color: #fff;
}
(记住,包括fontAwesome与<link rel="stylesheet" href="css/font-awesome.min.css">
样式表)
我仍然有一个问题的最大化按钮。如果我徘徊在它上面,它不会变白并保持灰色。也许有些空闲状态是错误的,但我还没有找到解决方案。 (如果我删除了代码行this.addIdleState(...)
悬停的作品,我需要在这里做更多的测试。)
我也想把图标从最大化改为最小化图标,一旦屏幕全屏显示,但我不知道该怎么做。这也是我的待办事项清单。
更新2014年2月7日
我想通了,如何解决这两个问题:
对于“空闲状态”的问题 - 我已经删除了空闲状态。因为我不在乎这些控件是否永久存在,现在如预期的那样悬停工作。也许我稍后再检查另一个解
要更改的图标上点击一下,你可以用CSS和jQuery做到这一点:
的最大化图标的过滤器之前添加下面的第一个压倒一切的CSS规则在CSS如:
.galleria-fscr.minimize:before{ content: "\f066"; }
添加这些JS行之后
gallery.toggleFullscreen()
- 即切换风格和MI前与正常之间的每一次点击的图标nimize前风格:$(".galleria-fscr").toggleClass("minimize");
这工作也为播放/恢复按钮(代码的其余部分是呈三角全屏代码):
JS
...
gallery.playToggle();
$('.galleria-pauseResumeBtn').toggleClass("resume");
- 1. 切换全屏模式
- 2. 切换全屏模式退出
- 3. GLFW切换窗口全屏模式
- 4. VideoView内嵌/全屏模式切换
- 5. 如何在全屏模式下切换全屏Swing框?
- 6. 全屏切换
- 7. 阵营本地变换视图切换到全屏模式
- 8. 应用样式切换到全屏模式(自/至)
- 9. 广场模块 - 式顶:
- 10. ipad/iphone视频无法切换到全屏模式
- 11. Android:phonegap/cordova:在应用程序运行时切换全屏模式
- 12. QtCreator:如何从全屏切换到正常模式
- 13. 切换全屏模式和方向,如YouTube
- 14. 在全屏和窗口模式之间切换失败
- 15. 使用Esc将窗口全屏切换到窗口模式
- 16. 不能从iframe切换到全屏模式
- 17. 如何在GTK +/GTK中切换全屏模式#
- 18. 如何设置酥料饼在IOS切换到全屏模式
- 19. SWT:将外壳切换到全屏模式
- 20. 使用Firefox与Firefox进行全屏模式切换
- 21. Xmonad切换全屏/ xmobar
- 22. VLCJ未能切换全屏
- 23. 全屏视频切换HTML
- 24. 使用MonkeyRunner切换屏幕模式?
- 25. 将屏幕切换为黑白模式
- 26. 如何在全屏和标准屏幕模式之间切换Stage3D?
- 27. BufferStrategy.getDrawGraphics()交换到全屏独占模式
- 28. admob插页式广告后继续赛格/切换屏幕
- 29. WPF全屏模式
- 30. Flex全屏模式
谢谢!我错过了.data(..)tho现在我可以打电话给它了,我在某处看到了一个bug ...请检查此页面:http://alturl.com/ycfy4并尝试使用萤火虫切换全屏或任何...有什么可疑的,我希望你能帮我弄清楚:) – 2012-02-16 14:33:10
@DanyKhalife你是什么意思的“切换使用萤火虫全屏”?你需要一个触发器,就像一个链接,在点击时触发它。 – David 2012-02-17 10:44:29
是的,但在Firebug的控制台中,您可以运行Javascript命令。在你的代码中你有这样的:'$('#galleria')。data('galleria')。toggleFullscreen();'如果你复制并粘贴到萤火虫控制台(包含图库的页面上)代码将会像点击按钮触发一样运行 – 2012-02-17 19:25:16