所以我试图链接到弹出窗口,
当我使用getId = alert($(obj).attr("id"))
进行测试时,它显示了id值;
但当我将其更改为getId = $(obj).attr('id')
时,该值变为undefined
。
对此有何解决方案?
// Pop-up window
var windowObject;
var getId;
openPopup(this.id);
function openPopup(obj) {
$(document).ready(function() {
$('.all').click(function() {
getId = $(obj).attr('id');
//getId = alert($(obj).attr("id"));
});
});
windowObject = window.open("slideshow/" + getId + ".html", "popup", width = 800, height = 500 ");
}

答案 0 :(得分:1)
您的getId
变量仅在您的点击处理函数中定义。这就是为什么这个函数内部的警报工作正常(以及getId = $(obj).attr('id');
),但在最后一个代码字符串(在单击回调之外)中未定义的原因。要修复它,请移动单击处理函数中的最后一个字符串:
function openPopup(obj) {
$(document).ready(function() {
$('.all').click(function() {
getId = $(obj).attr('id');
//getId = alert($(obj).attr("id"));
windowObject = window.open("slideshow/" + getId + ".html", "popup", "width=800,height=500");
});
});
}