2016-07-02 5 views
0

Код, приведенный ниже, должен щелкнуть по кнопке, на которую ему предлагается URL-адрес. После ввода URL-адреса создается новый элемент i со ссылкой на введенный URL, обернутый вокруг него как тег a.Как обернуть ссылку вокруг div jQuery?

Код работает, однако тег ссылки не создается - как я могу это сделать?

Новая ссылка должна быть обернута вокруг этого конкретного div.

Спасибо.

<script type="text/javascript"> 
    $(function() { 
     $(".twitter_new").click(function() { 
      link = prompt("Paste a url"); 
      if (link == null) { 
      return; 
      } 
      else { 
      div = document.createElement('i'); 
      $(div).addClass("fa").addClass("fa-twitter").wrapAll('<a href="' + link + '"></a>'); 
      $(".icons").append(div); 
      } 
     }); 
    }); 
</script> 

ответ

0

Ваш wrapAll() выражение не изменяет то, что переменная div есть. Он возвращает новый объект.

Вы все еще прилагая оригинальный i элемент только

Я хотел бы предложить вам создать 2 элемента или сделать это все как HTML строку

// create `<i>` 
var $i = $('<i>',{class: 'fa fa-twitter'}); 
// create <a> and append <i> 
var $a = $('<a>', {href:link}).append($i); 
// append complete <a> to dom 
$(".icons").append($a); 
+0

Спасибо, это работает отлично! –

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