Использование jquery append () в <head>(в функции / классе) - PullRequest
0 голосов
/ 29 апреля 2010

Я хочу использовать функцию append () внутри <head>, в конкретной функции, например:

function custom_img(src_img)
{
 $("div").append("<img src='"+src_img+"'>");
}
var myimg = new custom_img("test.jpg");

Это быстрый пример, который я только что написал. Я хочу, чтобы моя функция создавала новое изображение каждый раз, когда я создаю новый объект, подобный этому. Очевидно, это не работает, так как append () должен быть в теле (я пробовал это).

Как бы я это сделал?

Ответы [ 2 ]

1 голос
/ 29 апреля 2010

Причина, по которой он не работает, заключается в том, что ваш div еще не существует.
Таким образом, вы можете использовать функцию $(document).ready(), чтобы дождаться загрузки документа.

Или, если вы хотите, чтобы изображения загружались вместе с остальной частью документа, вы можете просто создать новый div и вставить туда изображения.

var div = $("div")
function custom_img(src) {
   div.append($("img").attr("src", src));
}

Затем, когда документ полностью заполнензагруженный, вы можете пройти через массив и вставить загруженные изображения в DOM.

$(document).ready(function() {
   $("#myDiv").append(div);
});
0 голосов
/ 29 апреля 2010

Вы можете попробовать использовать .after () или даже .html ()

function custom_img(src_img)
{
 $("div").after("<img src='"+src_img+"'>");
}
var myimg = new custom_img("test.jpg");

или

function custom_img(src_img)
{
 $("div").html("<img src='"+src_img+"'>");
}
var myimg = new custom_img("test.jpg");
...