JQuery Span текст копировать и использовать в качестве ширины - PullRequest
1 голос
/ 12 марта 2019

Я пытаюсь скопировать текст span в значение html width, но не могу заставить его работать?

С помощью приведенного ниже кода мне удалось продублировать текст, но как я могу установить его в качестве ширины элемента p?

$('.duplicate').text(function() {
  return $(this).closest('ul li').find('em').text();
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<ul>
  <li>
    <p class="duplicate"></p>
    <em>100</em>
  </li>
  <li>
    <p class="duplicate"></p>
    <em>200</em>
  </li>
  <li>
    <p class="duplicate"></p>
    <em>300</em>
  </li>
</ul>

1 Ответ

1 голос
/ 12 марта 2019

Вам необходимо применить функцию, чтобы вернуть значение width(), а не text():

$('.duplicate').width(function() {
  return $(this).closest('ul li').find('em').text();
});
p.duplicate {
  min-height: 10px; /* just for testing */
  background-color: #CCC;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<ul>
  <li>
    <p class="duplicate"></p>
    <em>100</em>
  </li>
  <li>
    <p class="duplicate"></p>
    <em>200</em>
  </li>
  <li>
    <p class="duplicate"></p>
    <em>300</em>
  </li>
</ul>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...