javascript - 如何在html页面中修改所有外部链接形式?
例如,我有:http://A.com/a/index.html,该页面里有很多不同网站的外链(如b.com、c.com、d.com等)。
现在我想,用php、JS或其他方法实现,点击外链接“b.com”,新窗口打开的地址是“http://a.com/b/index.php?b.com”的效果。
谢谢,因不太懂代码,希望大大们赐教,如何统一替换所有的外链形式?
回复内容:
例如,我有:http://A.com/a/index.html,该页面里有很多不同网站的外链(如b.com、c.com、d.com等)。
现在我想,用php、JS或其他方法实现,点击外链接“b.com”,新窗口打开的地址是“http://a.com/b/index.php?b.com”的效果。
谢谢,因不太懂代码,希望大大们赐教,如何统一替换所有的外链形式?
捕捉 click
事件,然后在事件处理函数里修改 href
。
<code>$(document).on('click', 'a:not([data-bypass])', function(e) { var $target = $(e.target), href = $target.attr('href'), prefix = 'http://a.com/b/index.php?'; if (/^http:\/\//.test(href)) { $target.attr('href', prefix + href); } // 把检查过的 <a> 标记一下,以后就不会再次做检查 $target.attr('data-bypass', 'bypass'); }); </a></code>
这种思路跟直接遍历 <a></a>
修改 href
的思路比较,好处是绝无死角且效率高,对于后面再加入的 <a></a>
也依然有效。而且对于需要特殊处理的 <a></a>
,只需要在标签里面先写上 data-bypass
属性就行,很方便。
jquery 获取全部 A 标签,然后批量替换 href
的值为 http://
开头的
<code>$("a[href*='http://']").each(function() { $(this).attr('href','http://www.fsdeveloper.net'+'/'+$(this).attr('href')); }); </code>
类似这种写法,

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

In this chapter, we will understand the Environment Variables, General Configuration, Database Configuration and Email Configuration in CakePHP.

PHP 8.4 brings several new features, security improvements, and performance improvements with healthy amounts of feature deprecations and removals. This guide explains how to install PHP 8.4 or upgrade to PHP 8.4 on Ubuntu, Debian, or their derivati

To work with date and time in cakephp4, we are going to make use of the available FrozenTime class.

To work on file upload we are going to use the form helper. Here, is an example for file upload.

In this chapter, we are going to learn the following topics related to routing ?

CakePHP is an open-source framework for PHP. It is intended to make developing, deploying and maintaining applications much easier. CakePHP is based on a MVC-like architecture that is both powerful and easy to grasp. Models, Views, and Controllers gu

Guide to HTML Table Layout. Here we discuss the Values of HTML Table Layout along with the examples and outputs n detail.

Visual Studio Code, also known as VS Code, is a free source code editor — or integrated development environment (IDE) — available for all major operating systems. With a large collection of extensions for many programming languages, VS Code can be c
