ארגומנטים
jQuery.data( element, key, value )
.data().
שיטה
jQuery.data()
מאפשרת לנו לצרף נתונים מכל סוג לאלמנטים
DOM
בשיטה בטוחה מפניות מעגליות ולכן מדליפות בזיכרון.
אנחנו יכולים לקבוע מספר ערכים שונים עבור אלמנט אחד ולקבל אותם מאוחר יותר:
jQuery.data(document.body, 'foo', 52); jQuery.data(document.body, 'bar', 'test');
דוגמה
מאחסן ואחרי זה מקבל ערך מאלמנט div.<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript" language="javascript">
$(document).ready(function(){
$("div").data("test", { first: 16, last: "pizza!" });
$("span:first").text($("div").data("test").first);
$("span:last").text($("div").data("test").last);
});
</script>
<style>
div { color:blue; }
span { color:red; }
</style>
</head>
<body>
<div>
The values stored were
<span></span>
and
<span></span>
</div>
</body>
</html>
ארגומנטים
jQuery.data( element, key )
jQuery.data( element )
שימו לב:
זו שיטה ברמה נמוכה;
אתם כנראה צריכים להשתמש ב-
.data().
שיטה
jQuery.data()
מאפשרת לנו לצרף נתונים מכל סוג לאלמנטים
DOM
בשיטה בטוחה מפניות מעגליות ולכן מדליפות בזיכרון.
אנחנו יכולים לקבל מספר ערכים שונים כל פעם עבור אלמנט אחד, או בצורה של סט:
alert(jQuery.data( document.body, 'foo' )); alert(jQuery.data( document.body ));
לעיל מוצגת דוגמת התראה של ערכי נתונים, שנוצרה על אלמנט
body.
אם שום דבר לא נוצר על אלמנט, תוחזר מחרוזר רייקה.
jQuery.data(element)
מקבל כל הערכים המתאימים של אלמנט כי אובייקט
JavaScript.
שימו לב ש-
jQuery
בעמצו משתמש בשיטה הזו עבור איחסון של נתונים לשימוש פנימי,
כמו מטפל אירועים, לכן אל תחשבו שהוא מכיל רק נתונים שמאוחסנים בקוד שלכם.
דוגמה
מקבל נתונים מאלמנט בשם «blah». $("button").click(function(e) {
var value;
switch ($("button").index(this)) {
case 0 :
value = $("div").data("blah");
break;
case 1 :
$("div").data("blah", "hello");
value = "Stored!";
break;
case 2 :
$("div").data("blah", 86);
value = "Stored!";
break;
case 3 :
$("div").removeData("blah");
value = "Removed!";
break;
}
$("span").text("" + value);
});
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript" language="javascript">
$(document).ready(function(){
$("button").click(function(e) {
var value;
switch ($("button").index(this)) {
case 0 :
value = $("div").data("blah");
break;
case 1 :
$("div").data("blah", "hello");
value = "Stored!";
break;
case 2 :
$("div").data("blah", 86);
value = "Stored!";
break;
case 3 :
$("div").removeData("blah");
value = "Removed!";
break;
}
$("span").text("" + value);
});
});
</script>
<style>
div { margin:5px; background:yellow; }
button { margin:5px; font-size:14px; }
p { margin:5px; color:blue; }
span { color:red; }
</style>
</head>
<body>
<div>A div</div>
<button>Get "blah" from the div</button>
<button>Set "blah" to "hello"</button>
<button>Set "blah" to 86</button>
<button>Remove "blah" from the div</button>
<p>The "blah" value of this div is <span>?</span></p>
</body>
</html>

