innerhtml аккуратно - PullRequest
       3

innerhtml аккуратно

0 голосов
/ 29 ноября 2010

Я использую html и js и хочу отобразить кусок HTML-кода, если пользователь что-то щелкнет.Код немного большой, поэтому использование document.getElementById("display").innerHTML = непривлекательно.Я гуглил и узнал об IFrame, но я хочу избежать полос прокрутки и прочего, я надеялся, что смогу использовать простой div, как я могу это сделать?Я также использую jquery, я знаю о функции hide () в jquery, но дело в том, что содержимое div с отображением идентификатора должно динамически меняться, поэтому, если пользователь нажимает item1, он должен получить text1, item2 должен получить text2и я хочу иметь определенное место для textx

Ответы [ 3 ]

1 голос
/ 29 ноября 2010

метод innerHTML, вероятно, является лучшим с точки зрения производительности.Если вы не получаете дополнительный контент (например, через вызовы AJAX), заранее поместите все блоки в отдельные div и установите для их атрибута css «display» значение «none».Затем вы можете инициировать изменение атрибута для конкретного div в «block» с событием, прикрепленным к некоторой кнопке или ссылке.

1 голос
/ 29 ноября 2010

Звучит так, будто вы ищете что-то вроде

$('.ShowLink').click(function() { 
    $('#' + this.rel).toggle();
    return false;
});

Это переключит элемент с идентификатором, заданным атрибутом rel= каждого элемента с классом ShowLink.
Например:

<a href="#" rel="Text1" class="ShowLink">Show something</a>
...
<div id="Text1">
    Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
</div>
0 голосов
/ 29 ноября 2010

Это можно сделать, разместив несколько элементов div друг над другом, затем показывая / скрывая соответствующие элементы, основываясь на вводе пользователем. Таким образом, вам не нужно манипулировать содержимым элементов, просто показать / скрыть их. Хитрость в том, чтобы абсолютно позиционировать элементы. Если вы сделаете это, вы можете захотеть, чтобы элемент last в списке был статически позиционирован (при условии, что все они будут одного размера), чтобы остальная часть страницы проходила вокруг этих элементов соответствующим образом. В качестве альтернативы вы можете поместить все эти элементы в другое статическое расположение, которое резервирует место для абсолютно позиционированных элементов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...