如何使用Javascript重写链接之间的文本

如何使用Javascript重写链接之间的文本,javascript,jquery,html,Javascript,Jquery,Html,我在一个div内有一个链接。在链接内(在之间),我显示了文本。我想在光标悬停在链接上时更改该文本 ***我忘了提到的一件事是,我想暂时更改文本(即仅当文本悬停在上方时) 以下是我的JSFIDLE: 这就是我的代码的样子 HTML JS var title=“二战飞机在国家公园坠毁”; 变量url=”https://www.nps.gov/articles/WWIIPlaneCrashes.htm" $(imgDiv)。追加($(''); (我正在使用API,.append是我创建链接的方式。我

我在一个div内有一个链接。在链接内(在之间),我显示了文本。我想在光标悬停在链接上时更改该文本

***我忘了提到的一件事是,我想暂时更改文本(即仅当文本悬停在上方时)

以下是我的JSFIDLE:

这就是我的代码的样子

HTML

JS

var title=“二战飞机在国家公园坠毁”;
变量url=”https://www.nps.gov/articles/WWIIPlaneCrashes.htm"
$(imgDiv)。追加($('');
(我正在使用API,.append是我创建链接的方式。我需要在JavaScript中动态地将它们创建到div)

这就是我尝试过的:

$(imgDiv).append($('<a href="' + url + '" id=link>'+ title +'</a>').css('text-decoration', 'none').hover(function(e) { 
        console.log($(e.target).text("NEWWW"));
}));
$(imgDiv).append($('').css('text-decoration','none').hover(函数(e){
log($(e.target).text(“NEWWW”);
}));
这将永久更改文本(而不是仅当鼠标悬停在上方时)

$(imgDiv).append($('').css('text-decoration','none').hover(函数(e){
职能(e){
log($(e.target).text(“NEWWW”);
}, 
职能(e){
log($(e.target).text(“oldd”);
}

这给了我一个错误。有人能帮忙吗?

您可以使用
mouseover
检测鼠标何时在链接上移动,然后使用
mouseout
查看鼠标何时离开链接

您还需要使用
text()
,因为
val()
用于表单字段

var title=“二战飞机在国家公园坠毁”;
变量url=”https://www.nps.gov/articles/WWIIPlaneCrashes.htm"
$('#imgDiv')。附加($('')
//创建一个事件以观看“a”标记
$('imgDiv a')。on('mouseover',(e)=>{
$(e.target).text('我是一些新文本')
})
//如果您不想让它在鼠标退出时返回,请将其注释掉。
.on('mouseout',(e)=>{
$(e.target).文本(标题)
});
正文{
背景:#20262E;
填充:20px;
字体系列:Helvetica;
}
#伊姆格迪夫{
宽度:200px;
高度:200px;
背景颜色:灰色;
}

正如您在前面的一个问题中提到的,
textContent
没有被jQuery公开,
innerHTML
。您需要熟悉jQuery没有直接公开元素属性的事实。您必须使用prop()对于属性访问。或者在这种情况下,更改html是
html(newHtml)
也是
val(newValue)
。我强烈建议您抓住机会仔细阅读。那里有大量的文献对个人开始使用jQuery很有帮助
#imgDiv {
width: 200px; 
height:200px; 
background-color: gray;
}
var title = "World War II Plane Crashes in National Parks";
var url = "https://www.nps.gov/articles/WWIIPlaneCrashes.htm"

$(imgDiv).append($('<a href="' + url + '" id=link>'+ title +'</a>'));
$(imgDiv).append($('<a href="' + url + '" id=link>'+ title +'</a>').css('text-decoration', 'none').hover(function(e) { 
        console.log($(e.target).text("NEWWW"));
}));
$(imgDiv).append($('<a href="' + url + '" id=link>'+ title +'</a>').css('text-decoration', 'none').hover(function(e) { 
    function(e) {
        console.log($(e.target).text("NEWWW"));
    }, 
    function(e) {
        console.log($(e.target).text("OLDDD"));
    }