0

我正在开发一个 Web 应用程序,其中相同的 JSP 页面使用不同的参数加载到同一页面的多个区域。为每个部分构建了动态 javascript,问题是当我在类名上使用 jQuery 选择器时,我在该 JSP 的所有实例中返回了该类的所有元素。

我想做的是在该动态javascript文件中以某种方式覆盖基本 $('.classname') 样式选择器以执行类似... $('<%=containerDiv%> .className') 的操作而无需重构执行此操作的所有代码。

我尝试更改的所有代码都封装到一个 javascript 对象中,因此我希望在构造函数中执行此操作。

提前致谢。

编辑:

在伪代码中,我正在寻找的是......

$(regularConstructor) = $(localVar + ' ' + regularConstructor);
4

1 回答 1

1

您可以尝试不生成,而只是在选择器中提供上下文作为第二个参数。

这将是这样的:

var widget = $("<div/>"); //Creating dom node
/*
  Or you can get it by your dinamic id: 
  widget = $("<%=containerDiv%>");
*/
widget.html("<div class='classname'>111</div>"); //Filling it with content
widget.appendTo("body"); //Inserting it to document
$(".classname", widget).fadeOut(); //working with elements inside your widget

而且你有一个 Dom 节点链接,你可以在脚本中使用它而不会在选择器中发生冲突。

于 2012-07-20T13:19:55.317 回答