将Javascript / Jquery隔离到一个元素

时间:2012-08-29 09:31:06

标签: javascript jquery web

使用LESS CSS我能够限制整个样式表作用于特定的div元素。我想将整个javascript文件限制在我页面上的特定div元素。

例如,在页面头部引导的js文件具有操作DOM中的表元素的代码。它完成了它的工作,但是页面上的所有表元素也不是我想要的那个特定元素。现在实际的灵魂是将所有相应的jquery选择器更改为更具体的标识符。我知道。但是山上有许多代码,这是不可行的。

有没有办法将javascript / jquery代码限制为特定的div?

我也想避免使用iframe。

感谢。

2 个答案:

答案 0 :(得分:1)

您可以检查元素if (jQuery('#element').html() !== null)

在这种情况下,我正在查看dom中是否存在#element。如果它返回true我通过ajax加载我的插件。

if (jQuery('#element').html() !== null) {
    jQuery.ajax({
        url: '../assets/js/plugins/myplugin.js',
        type: 'GET',
        dataType: 'script',
        cache: true,
        success: function(data, textStatus, xhr) {
            // Do whatever you want
        }
    });
}

但是,如果您有多个相似的元素,则无法更改您的选择器。也许你可以处理元素的索引(DOM中的位置)的宽度。

$("div:eq(2)") //get third div

答案 1 :(得分:1)

你可以做这样的事情

在jQuery中

var $div = function(sel) {
  $(sel, YOUR_DIV);
}

之后,您可以使用$('selector')而不是$div('selector')