2012-02-14 2 views
2

Я хочу добавить текст динамически на изображение. Я попытался использовать javascript/jQuery для этого. Вот код:Добавить текст на картинке с помощью позиции

$(document).ready(function() 
{ 
    var img = $("img#back1"); 
    var leftpos = img.position().left; 
    var toppos = img.position().top; 
    var div = document.createElement('div'); 
    div.style.position = 'absolute'; 
    div.style.top = toppos+"px"; 
    div.style.left = leftpos+"px"; 
    div.innerHTML = '<font> back </font>'; 
    div.style.background = '#CC0000'; 
    document.body.appendChild(div); 
}); 

После этого, я не получаю текст «назад» над изображением. Здесь правильное положение не может быть доставлено для передачи сверху и осталось тега div, чтобы указать текст над ним. Пожалуйста, предложите/исправьте меня, если я где-то ошибся.

Благодаря

+0

Можете ли вы разместить свой HTML-код и здесь с помощью CSS, лучше, если бы вы могли предоставить ссылку JSFiddle для этого. Возможно, вам не хватает Z-индекса для вашего div, не уверен. – Gurvinder

ответ

1

Лучший подход для добавления текста на изображение, чтобы поместить изображение на фоне с использованием css.It имеет много преимуществ. Вы можете проверить демо здесь

demo

+3

, что ссылка на demo does not work – Nidhi

+1

Эта ссылка - 404 – Jake

0

Вы должны посетить этот сайт:

Это хороший учебник для porpuse. И я бы посоветовал вам узнать немного больше о jQuery, потому что весь ваш javascript-код не использует функцию jquery jsquery. .ready()

1

http://api.jquery.com/position/ От

В .position() метод позволяет получить текущую позицию элемента относительно родительского смещения. Сравните это с .offset(), который извлекает текущую позицию относительно документа.

Как динамически создается div прикрепляется к body, используя offset() вместо position может помочь.

Смежные вопросы