Javascript 删除';a';但不是在';href';
请浏览我的网站: 如您所见,有一个预填充的输入。单击“保存”,您将看到正在保存的url旁边有一个图标。这样做几次以创建一个列表 如果刷新页面,您将看到显示“http://”的部分由于以下函数而被删除:Javascript 删除';a';但不是在';href';,javascript,jquery,function,cookies,replace,Javascript,Jquery,Function,Cookies,Replace,请浏览我的网站: 如您所见,有一个预填充的输入。单击“保存”,您将看到正在保存的url旁边有一个图标。这样做几次以创建一个列表 如果刷新页面,您将看到显示“http://”的部分由于以下函数而被删除: function replace() { $("a").text(function(i, h){ return h.replace('http://', ""); }); } 现在的问题是,如果单击列表项(而不是href),您将看到该项正在被删除。现在,如果你再次刷新
function replace() {
$("a").text(function(i, h){
return h.replace('http://', "");
});
}
现在的问题是,如果单击列表项(而不是href),您将看到该项正在被删除。现在,如果你再次刷新,你会看到所有的favicon都消失了。我认为这是因为函数“replace”也删除了“href”部分,这很奇怪,因为我明确指出它应该删除“text”。那么,如何删除没有favicon的项目列表呢?(基本上保持其url(href)不变)
另外,我不能给你一个关于JSFIDLE的演示,因为它在那里不起作用
jQuery('a[href^="http://"]', this).each(function () {
// ...
}
在该函数中添加favicon;这意味着,如果您的a
标记的href属性不是以http://
开头,它就不会有favicon。
使用jquery cookie填充列表时:
if (cookie){
var values = $.parseJSON(cookie);
var li;
for (var v in values) {
li = $('<li><a href="' + values[v]+ '">' + values[v] + '</a></li>');
$('.jq-text').append(li).show();
}
// ...
}
您还必须将href属性保存在cookie中,或者在从jquery cookie加载时手动添加http://
PS:对不起,我的英语不好;我希望我所写的内容是可以理解的。如果您不能在JSFIDLE上重现这个问题,我想这不是您的
replace
函数。只有我的$0.02。@Kyle当我把它放在JSFIDLE中并点击“保存”按钮时,它会返回一些内容:“使用post”我不知道那是什么,但它不起作用。您的代码需要一些认真的重构,出于某种原因,回调似乎适用于所有的应用程序links@atif089没关系。链接由两部分组成。一部分是这样的实际url:href=“someUrl”
另一部分是这样的:someUrl
函数是对最后一部分的纯文本进行寻址。它不应该对第一部分做任何事情(但它确实…),解决问题的最简单方法是重写整个过程。谢谢你花时间和精力,真的很感激:)我要试试这个,如果我成功了,我会告诉你的。
li = $('<li><a href="' + values[v]+ '">' + values[v] + '</a></li>');