2012-11-12 20 views
0

请看看我的网站:moskah.nl删除文本中的“一”,但不是“href”属性

正如你可以看到有一个预填充输入。点击'保存',你会看到该网址正在保存与它旁边的图标。做这个几次来创建一个列表。

如果您刷新页面,你会看到说,部分的“http://”被删除,因为函数:

function replace() { 
    $("a").text(function(i, h){ 
    return h.replace('http://', ""); 
    }); 

} 

现在的问题是,如果你再点击列表项(不是href),你会看到该项目正在被删除。现在,如果你刷新安捷安,你会看到所有的图标都没有了。我认为这是因为不知何故函数'replace'也删除了'href'部分,这很奇怪,因为我明确声明它应该删除'text'。那么如何删除没有favicon的项目列表? (基本上保持其url(href)完好)

ps。我不能给你一个关于jsfiddle的演示,因为它在那里不起作用。

+1

如果你不能在jsFiddle上重现问题,我想它是除了'replace'函数以外的东西。只是我的0.02美元。 – Kyle

+0

@Kyle当我把它放在JsFiddle中并点击'保存'时,它会返回一些内容:“use post”我不知道那是什么,但它不起作用 – Youss

+1

您的代码需要一些严重的重构,出于某种原因回调似乎正在申请所有链接 –

回答

1
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是设置相同a标签的文本:

li = $('<li><a href="' + values[v]+ '">' + values[v] + '</a></li>'); 

你要保存的cookie里面的href属性太升在从jquery cookie加载时手动添加http://。 PS:对不起我的英文不好,我的英文不好。我希望我写的是可以理解的。

+0

感谢您花费时间和精力,真的很感激它:)我会试试这个,我会让你知道如果(当)我成功了。 – Youss

相关问题