0

Jquery Lightbox 脚本和示例在这里:http ://www.aerowebstudio.net/codecanyon/jquery.lightbox/ 。

我将一些参数传递给控制来自超链接的 id 中的灯箱插件的 JQuery。id 上的最后一个子字符串 (substrk[2]) 是高度。我可以传递该值,但插件的高度超出了屏幕的高度。如果我不动态插入高度并输入静态数字,则插件可以正常工作。

我还尝试使用计时器延迟函数触发,以防万一出现问题,但它根本不会触发

<a class="lk" id="blah_blahh_68" href="javascript:void(0);">some link</a>

$(function(){
$(".lk").click(function(){
var lik = this.id;
var substrk = lik.split('_');
var intheight = substrk[2];
var strlinkk = "blah.php?id=" + substrk[0] + "&id2=" + substrk[1];
$.lightbox(strlinkk,{
'width'       : 474,
'height'      : intheight,
'autoresize'  : false
});
return false;
});
});

不幸的是,我看不到这样做的好方法。将“px”连接到字符串不起作用,添加短超时也不起作用

我必须做 IF / ELSE 语句来解决我的问题。IF THEN 语句有效,但它并不漂亮。这对我有用,因为我知道高度以 68px 为增量

$(function(){
$(".lk").click(function(){
var lik = this.id;
var substrk = lik.split('_');
var intheight = substrk[2];
var strlinkk = "blah.php?id=" + substrk[0] + "&id2=" + substrk[1];

if (intheight=68){

$.lightbox(strlinkk,{
'width'       : 474,
'height'      : 68,
'autoresize'  : false
});
return false;
});
});

}else if (intheight=136){

$.lightbox(strlinkk,{
'width'       : 474,
'height'      : 136,
'autoresize'  : false
});
return false;
});
});

}
4

1 回答 1

1

尝试:

var intheight = substrk[2] + "px";

此外,只需快速检查 substrk[2] 返回的内容,但会抛出:

alert(substrk[2]);

它可能就像抛出一些奇怪的东西一样简单。

于 2012-07-03T04:56:00.887 回答