我有一个Joomla网站使用Squeezebox,这是Joomla的默认模式javascript。
我一直在使用带有模板覆盖的Squeezebox。例如,我有一个链接,它显示在模板覆盖的每个页面上:
<a href="http://www.viddler.com/embed/cd1b1bc5/?f=1&autoplay=1&player=full&secret=104492144&loop=0&nologo=1&hd=1" class="modal vid-primary" rel="{url:'http://www.viddler.com/embed/cd1b1bc5/?f=1&autoplay=1&player=full&secret=104492144&loop=0&nologo=1&hd=1', handler: 'iframe', size: {x:741, y:459} }" style="display: block; position: relative;">这些链接在模式中打开视频。
我需要做的是能够打开这个视频onLoad,如果网址参数是存在的。例如:
http://mysite.com/page.html?vidload=vidload
所以我需要一个路由器来处理这个问题。我found something接近我想要的东西,但不太明白如何让它工作。这是我到目前为止所得到的:
window.addEvent('domready', function() {
function popModal() {
SqueezeBox.open($('vid-primary'), {
handler: 'adopt'
});
}
var hash = window.location.hash;
if (hash.substring(1) == 'vidload') {
popModal();
}
});发布于 2013-04-12 15:25:53
在模板覆盖中包含模式库:
<?php JHtml::_('behavior.modal'); ?>使用如下链接:
<a class="modal" rel="{handler: 'iframe', size: {x: 800, y: 500}}" title="Modal box title" href="[your link]" >open</a>有关Squeezebox Documentation和JHtml::_('behaviour.modal') options的更多信息
更新:我认为阿迪迪下面的答案就是你想要的。如果您无论如何都要加载更多的MooTools,则可以使用URI class
var uri = new URI (location.href);
if (uri.getData('vidload') == 'vidload') {
SqueezeBox.open($('vid-primary'), { handler: 'adopt' });
}发布于 2013-04-12 21:34:45
您正在尝试获取散列,但根据您的需要它是空的,如果您需要的是一个获取querystring参数的函数,您可以使用这个简单的函数:
function getURLParam(key,target){
var value = '';
if(!target){
target = location.href;
}
var pattern = key + '=([^&#]+)';
var o_reg = new RegExp(pattern,'i');
var matches = o_reg.exec(target);
if(matches && matches[1]){
value = matches[1];
}
return value;
}
if(getURLParam('vidload') == 'vidload'){
popModal();
}https://stackoverflow.com/questions/15964158
复制相似问题