我想獲得我的光標所在的父元素的屬性。爲什麼我返回undefined?
我現在大概兩個小時完全沒有成功,所以我張貼了看有沒有人有任何建議。這是我有,但不知道爲什麼只parentID
返回未定義功能:
function getAttrOfParent() {
var newRange = rangy.getSelection().getRangeAt(0);
var parentElement = newRange.commonAncestorContainer;
var parentID = $(parentElement).attr('id');
alert(parentID);
}
這正常獲取父元素的文本...
function getTextOfParent() {
var newRange = rangy.getSelection().getRangeAt(0);
var parentElement = newRange.commonAncestorContainer;
var parentText = $(parentElement).text();
alert(parentText);
}
...這可以很好地獲得指定元素的標題。
function getAttrOfElement() {
var parentID = $('#1').attr('id');
alert(parentID);
}
Here's my jsFiddle,您必須將文本區域內單擊前兩個功能一起工作。
在你的小提琴,你正在使用'.attr( '標題')',而不是'.attr( 'ID')'。後者工作正常。但也許我不明白你想要什麼。你有幾個'p'元素,它們既沒有'id'也沒有'title'屬性。所以當然你會得到'undefined'。 –
你的第一個函數會因爲一個很大的錯誤而崩潰:'未捕獲到的DOM異常:INDEX_SIZE_ERR' – David
@Felix Kling我修正了小提琴,但'.attr('id')'仍然不起作用。 –