【问题标题】:JQuery not adjusting image src in IE and Firefox, only in chromeJQuery 不在 IE 和 Firefox 中调整图像 src,仅在 chrome 中
【发布时间】:2015-09-30 09:13:26
【问题描述】:

我创建了一个图片库,它在 Chrome 中按预期工作,但在 Firefox 或 Internet Explorer 中根本无法工作。我查看了一些类似的问题,但我认为它们对解决这个问题并没有特别的帮助。

我已经创建了代码的 JFiddle:

https://jsfiddle.net/ydmgjzwp/

我猜导致问题的代码是:

function updateMainImage(){
  var selected = imageController.selectedImageObject;
  var currentImageObject = imageController.imageObjects[selected];
  var newImage = currentImageObject.image;

  $(imageController.mainImageImg).attr("src", newImage);
}

在 IE 和 FF 中,顶部的主图像根本不加载。它应该通过 JQuery 更改为较小的图像中的第一个,然后是用户选择的任何一个。

我没有注意到控制台日志中有任何有用的东西,但我可能又遗漏了一些东西。非常感谢任何人提供的任何帮助。

【问题讨论】:

  • 您的 img src url 上有双引号 - 检查 html 代码。
  • 谢谢,我认为这是导致问题的原因。现在我正在尝试找出双引号的来源

标签: javascript jquery html css google-chrome


【解决方案1】:

替换这个函数

function trimCssUrlSyntax(inputString) {
                    var returnString = inputString.replace('")', '');
                    returnString = returnString.replace('url("', '');
                    return returnString;
                }

【讨论】:

  • 这似乎对我不起作用,因为我认为替换需要参数?
  • 我现在有这个工作 - 但是,它确实需要一个额外的部分才能让它工作。我在函数返回之前添加了:returnString = returnString.replace(/"/g, ''); 以使其正常工作。
【解决方案2】:

您的图像 src 上有双引号。我改变你的功能和工作。

function trimCssUrlSyntax(inputString){
      var returnString = inputString.replace(")", );
      returnString =  returnString.replace("url(", );
      return returnString;
    }

DEMO HERE

【讨论】:

  • 对不起,这似乎对我不起作用;没有第二个参数,我理解替换将插入未定义
猜你喜欢
  • 1970-01-01
  • 2011-06-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多