Необходимость: найти способ добавить действительный тег / атрибут / свойство в обычный элемент управления html.
У меня есть какой-то javascript / jquery, добавляющий событие click к ссылке, которая будет показывать или скрывать div. Идея состоит в том, чтобы сделать это, используя $ (document) .ready и анонимный метод, чтобы создать метод, вызываемый onClick при загрузке страницы. При нажатии на элемент div будет показан текст. Это все хорошо, за исключением того, что я не могу понять, как настроить текст, чтобы это можно было сделать при загрузке страницы. Я хотел бы что-то вроде:
<a href="..." class="showItLink" textToShow="This is the text to show">HI</a>
так что я могу сделать это:
$(document).ready
(
function()
{
$("..showItLink").click
(
function(event)
{
var containerPosition;
var createdDiv;
//see if the div already exists
createdDiv = $(this).children(".postComment");
if (createdDiv.length == 0)
{
//This is where the attribute is used so that the CreateDiv
//method can take the textToShow and fill the div's innerText
//with it V V V V V V
createdDiv = CreateDiv(this.textToShow, "postComment");
$(this).append(createdDiv);
$(this).children(".postComment").hide();
}
$(createdDiv).toggle();
event.preventDefault();
}
);
}
);
Теперь, помимо того, что xhtml не действителен (meh), это работает только в IE. Firefox просто говорит, что его не существует. (this.textToShow) Я мог бы использовать что-то вроде rel или rev, но это кажется таким же хакерским. Мне было интересно, если есть правильный способ сделать это.
Решение из ответа ниже
comment = $(".showItLink").attr("comment");
...
createdDiv = CreateDiv(comment, "postComment");
В паре с:
<a href="http://www.theironical.com" class="showItLink" comment="hihihi" >HI</a>