Я использую Fancybox из FancyApps для предварительного просмотра контента на моем сайте.
<a href="#inline" class="various"><span class="info"></span></a>
<div id="inline" style="display:none;width:500px;">
<h2>Always enjoy the sunny days!</h2>
</div>
<script type="text/javascript">
$(document).ready(function() {
$(".various").fancybox({
maxWidth : 500,
autoSize : true,
closeClick : false,
openEffect : \'none\',
closeEffect : \'none\'
});
});
</script>
В принципе это работает нормально, но в одной ситуации мне нужно перенаправить свой сайт на защищенный сервер, поэтому доменизменится.
Пример:
https://secure -payment.com / relay / v2 / relay.cgi / http://www.mydomain.com/checkout
Когда я использую ссылку для запуска Fancyboxнет этой страницы, я просто получаю " Запрошенный контент не может быть загружен. Пожалуйста, попробуйте позже. "
Кроме того (я не знаю, если это актуально) я запускаюСценарий ниже в нижней части моей страницы, это по просьбе платежной компании.
//
// Variables used for searching
//
var relayurl = "https://relay.ditonlinebetalingssystem.dk/";
var relayurl_replace = "https://relay.ditonlinebetalingssystem.dk/relay/v2/relay.cgi/";
var baseurl = "";
function getURLParam(strParamName){
var strReturn = "";
var strHref = window.location.href;
if ( strHref.indexOf("?") > -1 ){
var strQueryString = strHref.substr(strHref.indexOf("?")).toLowerCase();
var aQueryString = strQueryString.split("&");
for ( var iParam = 0; iParam < aQueryString.length; iParam++ ){
if (aQueryString[iParam].indexOf(strParamName.toLowerCase() + "=") > -1 ){
var aParam = aQueryString[iParam].split("=");
strReturn = aParam[1];
break;
}
}
}
return unescape(strReturn);
}
//
// Replace all links to NOT use the relay-script when the user clicks on the links
//
function replaceRelayButtons(parent, startTimer) {
var aEls = parent.childNodes;
for (var i = 0, aEl; aEl = aEls[i]; i++) {
//
// Do recursive call
//
replaceRelayButtons(aEls[i]);
if (aEls[i].tagName == 'A' || aEls[i].tagName == 'a') {
if (aEls[i].href.indexOf(relayurl) == 0) {
aEls[i].href = aEls[i].href.replace(relayurl_replace, "");
aEls[i].href = aEls[i].href.replace(relayurl, "")
if (aEls[i].href.indexOf("http://") != 0) {
aEls[i].href = (baseurl + "/" + aEls[i].href);
}
}
}
if (baseurl.length > 0) {
if (aEls[i].tagName == 'IMG' || aEls[i].tagName == 'img') {
if (aEls[i].src.indexOf(relayurl) == 0 && aEls[i].src.indexOf(relayurl_replace) == -1) {
aEls[i].src = aEls[i].src.replace(relayurl, relayurl_replace + "/" + baseurl + "/");
}
}
}
}
//
// Now start the timer which runs this function again to fix all body elements that might not be loaded in the browser yet
//
if (startTimer) {
setTimeout("replaceRelayButtons(document.body, false)",1000)
setTimeout("replaceRelayForms()",1000)
}
}
//
// Replace all form actions to NOT use the relay-script when the user clicks on the links
//
function replaceRelayForms() {
for (i = 0; i < document.forms.length; i++) {
if (document.forms[i].action.indexOf(relayurl) == 0) {
document.forms[i].action = document.forms[i].action.replace(relayurl_replace, "");
document.forms[i].action = document.forms[i].action.replace(relayurl, "")
if (document.forms[i].action.indexOf("http://") != 0) {
document.forms[i].action = (baseurl + "/" + document.forms[i].action);
}
}
}
}
//
// Go and replace the urls and form actions
//
if (getURLParam('baseurl') != null) {
baseurl = getURLParam('baseurl')
}
replaceRelayButtons(document.body, true);
Что я могу сделать не так?Это вообще возможно?