无法使用jquery追加图像

时间:2016-06-08 18:47:55

标签: javascript jquery jquery-selectors

我目前有一个代码工作,我可以使用jquery基于页面的url添加一个类。但是我想将图像添加到div而不是仅添加一个类。我不像以前那样精通java脚本,但我认为可能有一个非常简单的解决方案。不起作用的代码是

if (window.location.href.indexOf('Locate_an_eyecare_professional') > -1) {
        var img = document.createElement("img");
        img.src = '~/Content/Images/Template 5A Filmstrip.jpg" />';



    }

现在我不想使用的代码是

if (window.location.href.indexOf('Locate_an_eyecare_professional') > -1) {
        var $body = $('body');

        $body.addClass('campaign');


    }

如何应用我所知道的,这对我想要的工作有用?

4 个答案:

答案 0 :(得分:0)

您可以使用jQuery <img>函数以下列方式向任何元素添加.append()

var imageToAppend = '<img src="http://example.com/img.png" height="200" width="200"/>';
$('#myElementId').append(imageToAppend); //This will append you HTML to the div with id "myElementId"

您可以在此处详细了解:http://api.jquery.com/append/

快乐的编码! =]

答案 1 :(得分:0)

您应该使用您需要附加(前置)图像元素的元素,以便代码看起来像:

$("base element selector").append(img);

但是从浏览器的角度来看,您需要考虑图片来源的地址可能不正确 - 请考虑在http://server.com//applicationgroup/applicationroot/Content/Images/.....jpg这样的应用程序中托管页面可能不会指向~/Content/Images/.....jpg您而是需要将地址转换为服务器端的完整服务器地址。

答案 2 :(得分:0)

如果出于某种原因你不想在这个部分使用jQuery,你只需要将元素附加到html文档的主体(或者你希望它结束​​的任何地方),如下所示:

Javascript代码

app.controller('MainCtrl', function($scope, $http) {

    // Just to reproduce the problem
    $http({
        method: 'GET',
        url: 'https://api.github.com/repositories'
    }).then(function successCallback(response) {
       $scope.workOrdersList = response.data;
    }, function errorCallback(response) {

    });
});

答案 3 :(得分:0)

就我而言,我只需要从以下位置删除“〜”:

<img src="~/assets/icons/ic_chevron2.svg" class="rot-90" />

导致:

<img src="/assets/icons/ic_chevron2.svg" class="rot-90" />