【问题标题】:How to change script wthout id via jquery如何通过jquery更改没有id的脚本
【发布时间】:2015-11-21 02:11:02
【问题描述】:

我有一个没有 id 的 html script 标记,但我需要更改它的属性是 javascript 或 jquery。问题是有多个脚本,都彼此相邻。有什么方法可以通过使用$("").attrdocument.script 运算符或(for;i++;var i) 语句来搜索具有特定Url 但没有ID 的script 并更改该脚本的属性?

【问题讨论】:

  • 使用src作为选择器

标签: javascript jquery html attributes src


【解决方案1】:

使用src 作为选择器。

$("script[src='your-script-url-to identify']").prop('class','newClass');

【讨论】:

    【解决方案2】:

    试试这个。这将针对元素 <script> 在 DOM 中已经具有属性 'src' 并更改其属性。

    var scriptUrl = "www.msn.com";
    $('script[src=' + scriptUrl + ']').attr("src","new value");
    

    【讨论】:

    • 我试过了,但问题是我需要为一个特定的脚本更改它一百万没有id的
    • 评选标准是什么?
    【解决方案3】:

    你可以试试这个。我当然希望这会对你有所帮助。

    var matchSrc = 'path/to/some/src',
        scripts  = document.getElementsByTagName( 'script' );
    
    var i, j;
    
    for ( i = 0, j = scripts.length; i < j; i++ ) {
        if ( matchSrc == scripts[i].getAttribute('src') ) {
            scripts[i].className = 'found-you';
            break;
        };
    };
    

    更新:更正了一个愚蠢的 JS 错误 ^_^

    【讨论】:

    • 可以用js文件替换js src吗
    • 是的,我们可以。 scripts[i].innerHTML = 'custom js code'。虽然先删除这个scripts[i].src = ''。现在最大的担忧是浏览器可能已经读取并处理了有问题的脚本,因此之后的任何更改都不会生效。为了确保它确实如此,我们的脚本必须在要修改的脚本之前运行。
    • 现在我假设将在底部添加修饰符脚本,我看不出有什么方法可以实现您的新要求。
    猜你喜欢
    • 1970-01-01
    • 2016-07-08
    • 2022-10-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-10-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多