0
我是新来的JQuery &我试图做一些事情,我不知道我可以在JQuery做什么。JQuery:转换为和从textarea元素
- 我可以使用JQuery(或者甚至是本地Javascript)函数获取HTML元素类型吗?如果是这样,该函数的名称是什么?
- 我想更新/设置HTML元素类属性。你会建议我使用普通的旧setAttribute()为此还是应该使用JQuery函数?如果我应该使用JQuery函数,那么函数的名称是什么?
- 是否有一个JavaScript函数返回一个HTML元素类?它是this.getAttribute(“class”);?
更有经验的JQuery的程序员:你会如何改善,试图再次返回更改元素的textarea的这个jQuery HTML代码(有些功能现在丢失):用于
<html>
<head>
<script type="text/javascript" src="jquery-1.6.4.js"></script>
<script type="text/javascript">
<!--
var STATE = 0;
function Toggle()
{
if (STATE==1) { convertToUpdatable(); STATE = 0; }
else { convertToStatic(); STATE = 1; }
}
function convertToUpdatable()
{
// Post: Convert all HTML elements (with the class 'updatable') to textarea HTML elements
// and store their HTML element type in the class attribute
// EG: Before: <p class="updatable"/> Hello this is some text 1 </p>
// After : <textarea class="updatable p"/> Hello this is some text 1 </textarea>
$(".updatable").each(function()
{
$(this).replaceWith("<textarea>"+$(this).text() +"</textarea>");
// TODO store this elements type in class attribute
// The below is guessing that there are jquery functions getType()
$(this).setAttribute("class", $(this).getAttribute("class") + $(this).getType());
});
}
function convertToStatic()
{
// Post: Find all HTML elements (with the class 'updatable'), check to see if they are part of another class aswell
// (which will be their original HTML element type) & convert the element back to that original HTML element type
$(".updatable").each(function()
{
// This uses javascript functions: how can I write this in JQuery
var type = this.getAttribute("class").replace("updatable","").replace(" ", "");
if (type == "") { alert("Updatable element had no type defined in class attribute"); return; }
$(this).replaceWith(type +$(this).text() + type);
$(this).setAttribute("class", "updatable");
});
}
-->
</script>
</head>
<body>
<p class="updatable"/> Hello this is some text 1 </p>
<b class="updatable"/> Hello this is some text 2 </b>
<i class="updatable"/> Hello this is some text 3 </i>
<input id="MyButton" type="button" value="Click me!" onclick="Toggle();" />
</body>
</html>