Поскольку вы просите сделать это, чтобы скрыть ссылки на членство, может быть лучший способ.
более разумно перебирать все ваши ссылки (скажем, под широким селектором $("a.out")
, а затем загружать и хранить свой реальный href в хранилище элементов, заменять его фиктивным (и атрибутом title, если вам нужно). Затем вы присоединяете обработчик события клика, который останавливает событие по умолчанию, считывает исходный href и задает его как location.href, эффективно маскируя ссылки на все, у которых есть js.
например код в mootools:
(function() {
var links = document.getElements("a.out");
links.each(function(el) {
// save original
el.store("href", el.get("href"));
// replace it.
el.set("href", el.get("data-link"));
el.addEvents({
click: function(e) {
e.stop();
// console.log(e);
document.location.href = this.retrieve("href");
},
contextmenu: function(e) {
e.stop();
// do something on right click so we dont get caught
alert("hi");
}
});
});
})();
который отлично работает на этой разметке:
<a href="http://www.energyhelpline.com/energy/rg_home.aspx?aid=107" rel="nofollow" class="out" title="Enegry savings" data-link="http://www.energyhelpline.com/">Swap Energy Provider</a><br />
<a href="http://www.moneysupermarket.com/link.asp?Source=MSE&Section=utils" rel="nofollow" class="out" title="Money supermarket" data-link="http://www.moneysupermarket.com/">Money Supermarket</a>
с линией передачи данных, содержащей то, что мы покажем конечным пользователям.
Вы можете сделать идентификатор, если вы позволите в вашей браузер. Какой у вас браузер? – 2010-11-30 14:56:05