我一直在编写一个应用程序,该应用程序使用以下代码来检测存储在bgimg
变量中的URL中是否存在-size参数。
原因是有许多返回的空值,并且由于它正在寻找size参数,因此代码通常会陷入错误循环中,无法读取indexOf null属性。
最终目标是在bgimg变量为null时动态替换它。
我做了一些研究,发现最简单的解决方案是使用indexOf,但是每当bgimg.indexOf(“-size”)为null时,它似乎都不接受。
var bgimg = t[e]['art'];
if(bgimg.indexOf("-size") != null){
var bgimg = bgimg.replace('-size','-newsizePXxPX');
var art = $('.art').css('background-image', 'url(' + bgimg + ')');
}
else
{
var bgimg = "http://artfillerhere.jpg";
var art = $('.art').css('background-image', 'url(' + bgimg + ')');
}
任何有关如何解决此难题的帮助或建议,将不胜感激!
最佳答案
你为什么不做bgimg && bgimg.indexOf("-size") != -1
。如果找不到字符串,否则.indexOf()
返回-1
,否则找到的字符串的索引。
var bgimg = t[e]['art'];
if(bgimg && bgimg.indexOf("-size") != -1){
var bgimg = bgimg.replace('-size','-newsizePXxPX');
var art = $('.art').css('background-image', 'url(' + bgimg + ')');
}
else
{
var bgimg = "http://artfillerhere.jpg";
var art = $('.art').css('background-image', 'url(' + bgimg + ')');
}