【问题标题】:Mapping the img src to other domain将 img src 映射到其他域
【发布时间】:2021-01-06 16:28:53
【问题描述】:

我想把所有的图片、css文件移动到另一台服务器上, 然后让所有的img标签src(相对路径)指向那个服务器的域。

例如,原件:

<i><img src= "/Content/picture.png" /></i>

我想要什么:

<img src="ServerDomain/Content/picture.png" />

我试过这个 jQuery:

function Mapping() {
   $('img').each(function() {
       $(this).attr('src', 'ServerDomain' + $(this).attr('src'));
   });
};

$(document).ready(function() {
     Mapping();
});

但是一些由 javascript 生成的 img 标签不起作用。

(顺便说一下,ServerDomain 是在 web.config 中设置的(通过 ajax 获取))

有没有其他办法解决?

【问题讨论】:

  • $(this).attr('src', '@Url.Content("~")' + $(this).attr('src')); 。用这个。这可能会有所帮助。
  • 一些标签? maby你有不同的src标签不起作用?请展示多尔示例
  • 如果您在页面加载后检查不工作的 元素以查看您实际获得的“src”值,这将非常有帮助。另外,我不明白如何使用 AJAX 获取请求从 web.config 获取 AppSetting?
  • 如果此移动是永久性的,我建议使用查找和替换并将图像硬编码到新位置。这将节省您在客户端上的执行时间,并避免不必要的代码。
  • @KhalidT。我在其中有一个 GetDomainController 和 GetDomainAction,并且我在此操作中从 web.config 获取 AppSetting。其实ajax就是从/GetDomain/GetDomainAction获取域。对不起,我没有在上面描述清楚。

标签: javascript jquery html asp.net-mvc


【解决方案1】:

您必须确保您的代码在生成 img 标签的 JavaScript 之后运行。

所以,要么将你的代码移到其他代码之后,要么在它之后调用映射函数

【讨论】:

    【解决方案2】:

    我制作了一个可以在本地正常工作的示例,可能会对您有所帮助。我不知道你在页面上生成图像的逻辑,所以我做了一个简单的:

     <script>
        /* some logic that retrieve the image from somewhere else  - javascript produce image */
        function GetMyPicture() {
            return "28141835294_99d18fa033_z";
        }
        $(document).ready(function() {
            var src = GetMyPicture() + ".jpg";
            $("#my").attr('src', src);
        });
    
    </script>
    
    <script>
    
        var domain = "https://c7.staticflickr.com/9/8597/";
    
        function Mapping() {
            $('img').each(function() {
                $(this).attr('src', domain + $(this).attr('src'));
            });
        };
        $(document).ready(function() {
            Mapping();
        });
    
    </script> 
    
    <body>
       <img id="my" src="">
    </body>
    

    【讨论】:

      猜你喜欢
      • 2019-01-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-07-07
      • 1970-01-01
      • 2015-12-27
      • 2022-08-15
      相关资源
      最近更新 更多