我有一个照片厨房,我使用fancybox显示,它工作正常。我需要添加其他功能,以便用户可以通过电子邮件与朋友分享照片链接等等。
我正在使用asp.net网络表单c#以及我的主要照片库的主页设计,并使用iframe从我的主要Photogallery.aspx页面加载带fancybox的图库。
现在工作正常我希望用户在主页Photogallery.aspx上的精美框中打开同一个链接共享我的电子邮件。
我使用java脚本来检查查询字符串“emailImgID”是否存在然后我触发一个隐藏的链接来加载fancybox但它不起作用但下面是最新版本的代码。我尝试了不同的东西,但它似乎没有用..
<script src="Scripts/jquery-1.6.min.js" type="text/javascript"></script>
<script src="fancybox/jquery.fancybox-1.3.4.pack.js" type="text/javascript"></script>
<link href="fancybox/jquery.fancybox-1.3.4.css" rel="stylesheet" type="text/css" />
<link rel="stylesheet" href="style.css" />
<script type="text/javascript">
$(document).ready(function () {
$("a.iiframe").fancybox({
'scrolling': 'no',
'width': 830,
'height': 650,
'autoScale': false,
'transitionIn': 'none',
'transitionOut': 'none',
'type': 'iframe'
});
$.extend({
getUrlVars: function () {
var vars = [], hash;
var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
for (var i = 0; i < hashes.length; i++) {
hash = hashes[i].split('=');
vars.push(hash[0]);
vars[hash[0]] = hash[1];
}
return vars;
},
getUrlVar: function (name) {
return $.getUrlVars()[name];
}
});
// i use this part to trigger link event so that it can load fancy box rather it shows only loading icon and doesnt load fancybox
var urlVars = $.getUrlVars();
if (urlVars['emailImgID'] != "") {
$("#MainContent_hidden_link").fancybox().trigger('click');
}
});
</script>
答案 0 :(得分:0)
要获取网址的查询字符串部分,请使用location.search
。
将getUrlVars
方法更改为。
getUrlVars: function () {
var vars = [], hash;
if(winddow.location.search){
var hashes = winddow.location.search.split('&');
for (var i = 0; i < hashes.length; i++) {
hash = hashes[i].split('=');
vars.push(hash[0]);
vars[hash[0]] = hash[1];
}
return vars;
}
},
并按此检查
var urlVars = $.getUrlVars();
if (urlVars['emailImgID']) {
$("#MainContent_hidden_link").fancybox().trigger('click');
}
答案 1 :(得分:0)
工作脚本:我管理的代码可以对脚本进行微小的更改,现在工作正常
$(document).ready(function () {
$("a.iiframe").fancybox({
'scrolling': 'no',
'width': 830,
'height': 650,
'autoScale': false,
'transitionIn': 'none',
'transitionOut': 'none',
'type': 'iframe'
});
$.extend({
getUrlVars: function () {
var vars = [], hash;
var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
for (var i = 0; i < hashes.length; i++) {
hash = hashes[i].split('=');
vars.push(hash[0]);
vars[hash[0]] = hash[1];
}
return vars;
},
getUrlVar: function (name) {
return $.getUrlVars()[name];
}
});
var urlVars = $.getUrlVars();
if (urlVars['emailImgID'] != null) {
$("#<%= hidden_link.ClientID %>").trigger('click');
}
});