-3

如果我有 html

<TableView id=img1></TableView>
<TableView id=img2></TableView>

一般

  $.img1.backgroundImage = "/Picture1.jpeg"

但我想知道如何存储id局部变量并调用相同的函数,而不是img1我必须使用局部变量。这有什么可能。

4

6 回答 6

2

是的,但需要相应地调整代码以设置背景图像

var img1 = $("#img1")
img1.css("background-image","/Picture1.jpeg");
于 2013-02-12T07:20:25.300 回答
2

通常$.img1.backgroundImage = "/Picture1.jpeg"是无稽之谈,因为 jQuery 不会使用引用页面上所有具有 id 的元素的属性来填充自身。

将其转换为使用变量而不是标识符(假设var foo = 'img1';为以下所有示例的利益)将是

$[foo].backgroundImage = "/Picture1.jpeg";

(这等效于原始代码,但是由于我不希望原始代码可以工作,因此也不会)。

backgroundImage要在 JS 中实际设置属性,您将:

document.getElementById(foo).style.backgroundImage = "url(/Picture1.jpeg)";

或者如果你是一个 jQuery 迷:

jQuery('#' + foo).css('background-image', 'url(/Picture1.jpeg)');
于 2013-02-12T07:26:52.850 回答
1
var images = $("#img1");

或者你也可以使用

var images_obj=form_name.element_name;
于 2013-02-12T07:22:59.003 回答
1
var yourVar= $("#img1").attr("id");
于 2013-02-12T07:24:35.833 回答
1

我想你想改变一个由 id 选择的元素的背景图像 css 属性,谁在局部变量中?

var yourid = "img1";
$('#' + yourid ).css('background-image', '/Picture1.jpeg');
于 2013-02-12T07:29:10.630 回答
0

您最好保存对象而不是 id,因为您需要一次又一次地通过 id 获取元素。

var img1Obj1 = $('#img1');  //jQuery object
var img1Obj2 = $('#img1')[0]; // DOM javascript object
于 2013-02-12T07:19:40.887 回答