我正在尝试保持我的应用程序正常工作,即使用户没有js,我注意到我的灯箱没有在旧浏览器上使用ajax善良并试图修复它但是不确定如何解决这个问题。
我有一个类
的链接<a href="/blah/1234", class="modal">Blah</a>
但我需要告诉灯箱使用href + .js扩展名(如果有效)。这样,如果用户没有js或因任何原因而中断,它会将它们发送到后备页面并且行为正常。
$('.modal').lightbox({
'width' : 465,
'height' : 375,
'autoresize' : false,
'modal' : true
});
灯箱没有href属性,我可以用它自己的参数来改变它,所以我试着在手边做,但有点太乱了。
这很糟糕,但是每次点击一次就会中断,因为它每次都会添加.js。
$('.modal').bind('click', function() {
$('.modal').attr("href", $('.modal').attr("href") + '.js');
$('.modal').lightbox({
'width' : 465,
'height' : 375,
'autoresize' : false,
'modal' : true
});
});
如何在调用灯箱之前更简单地更改扩展程序?
答案 0 :(得分:2)
您可以使用.attr()
的功能检查已 <{1}}是否已结束
.js
或者,对$('.modal').attr("href", function(i, href) {
return href + (href.slice(-3) == '.js' ? '' : '.js');
});
上的所有链接执行此操作,如下所示:
ready