如何在包含特定文件扩展名的超链接中添加类?

Cof*_*fey 3 javascript css php regex jquery

有人可以告诉我如何获取字符串并对其运行一个函数来检查特定类型的文件(例如".pdf").如果字符串包含该文件,则需要将"pdf"类应用于包含该链接的锚点.

这是一个字符串的示例:

<a href="/downloads/myfile.pdf">My PDF</a>
Run Code Online (Sandbox Code Playgroud)

我希望它改为:

<a href="/downloads/myfile.pdf" class="pdf">My PDF</a>
Run Code Online (Sandbox Code Playgroud)

Arn*_*anc 8

在CSS中执行此操作:

a[href$=".pdf"] {
   /* some rules */
}
Run Code Online (Sandbox Code Playgroud)

但某些浏览器可能不支持此功能.

或者,使用jQuery或任何库在Javascript中执行此操作:

$('a[href$=".pdf"]').addClass('pdf'); // in jQuery
Run Code Online (Sandbox Code Playgroud)

或者没有图书馆:

var elems = document.getElementByTagName('a');
for (var i = 0; i  < elems.length; ++i) {
    var a = elems[i];
    if (/\.pdf$/.test(a.href)) {
        a.className = 'pdf';
    }
}
Run Code Online (Sandbox Code Playgroud)