如何使用动态内容生成实现不显眼的javascript?

Bra*_*ayn 7 javascript jquery

我编写了很多动态生成的内容(在PHP下开发),我使用jQuery为我的项目增加了额外的灵活性和功能.

事情是,以一种不引人注目的方式添加JavaScript是相当困难的.这是一个例子:

您必须生成随机数量的div元素,每个元素都触发不同的功能onClick.我可以使用onclick我的div元素上的属性来调用带有参数的JS函数,但这只是一个糟糕的解决方案.此外,我可以在我的PHP for循环中生成一些jQuery代码以及每个div ,但是再次这不会完全不引人注目.

那么这种情况下的解决方案是什么?

ror*_*ryf 5

您需要向div添加一些内容来定义它们具有的行为类型,然后使用jQuery选择这些div并添加行为.一种选择是使用class属性,尽管可以说这应该用于表示而不是行为.另一种选择是rel属性,但我通常发现你也想为每个行为指定不同的CSS,所以在这个实例中类可能没问题.

因此,举例来说,假设你想要奇怪甚至是偶然的行为:

<div class="odd">...</div>
<div class="even">...</div>
<div class="odd">...</div>
<div class="even">...</div>
Run Code Online (Sandbox Code Playgroud)

然后在jQuery中:

$(document).load(function() {
$('.odd').click(function(el) {
// do stuff
});
$('.even').click(function(el) {
// dostuff
});
});
Run Code Online (Sandbox Code Playgroud)

jQuery有一个非常强大的选择器引擎,它可以基于任何基于CSS的选择器找到,并且还支持一些XPath及其自己的选择器.了解他们!http://docs.jquery.com/Selectors