use*_*041 4 javascript anchor jquery href selector
我使用以下命令定位包含jQuery中各种文件类型的链接:
jQuery('a[href$=".pdf"], a[href$=".doc"], a[href$=".docx"], a[href$=".ppt"], a[href$=".pptx"], a[href$=".xls"], a[href$=".slxs"], a[href$=".epub"], a[href$=".odp"], a[href$=".ods"], a[href$=".txt"], a[href$=".rtf"]').before('<span class="glyphicon glyphicon-file"></span> ');
Run Code Online (Sandbox Code Playgroud)
首先,有没有办法减少重复?例如
jQuery('a[href$=".pdf|.doc|.docx"])
Run Code Online (Sandbox Code Playgroud)
其次,有没有办法针对文件扩展名针对不同的情况,例如Pdf,PDF和pdf?
您可以使用筛选选定的元素.filter().在过滤器功能中使用正则表达式检查扩展名String.prototype.match().
$("a").filter(function(){
return $(this).attr("href").match(/\.(pdf|doc|docx|ppt|pptx|xls|slxs|epub|odp|ods|txt|rtf)$/i);
}).before("Some html");
Run Code Online (Sandbox Code Playgroud)
$("a").filter(function(){
return $(this).attr("href").match(/\.(pdf|doc|docx|ppt|pptx|xls|slxs|epub|odp|ods|txt|rtf)$/i);
}).css("color", "red")Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a href="file.pdf">pdf</a>
<a href="file.doc">doc</a>
<a href="file.html">html</a>
<a href="file.docx">docx</a>
<a href="file.ppt">ppt</a>
<a href="file.php">php</a>
<a href="file.slxs">slxs</a>
<a href="file.txt">txt</a>Run Code Online (Sandbox Code Playgroud)
请注意,i正则表达式末尾的标志不区分大小写.
| 归档时间: |
|
| 查看次数: |
1900 次 |
| 最近记录: |