hello эта функция разрешает ошибку, связанную с текущим элементом, не отображаемым в пути
, проверьте это сейчас
$j(".wrapper").click(function(event) {
selectedElement=$j(event.target);
var rightArrowParents = [];
$j(event.target).parents().not('html,body').each(function() {
var entry = this.tagName.toLowerCase();
if (this.className) {
entry += "." + this.className.replace(/ /g, '.');
}else if(this.id){
entry += "#" + this.id;
}
entry=replaceAll(entry,'..','.');
rightArrowParents.push(entry);
});
rightArrowParents.reverse();
//if(event.target.nodeName.toLowerCase()=="a" || event.target.nodeName.toLowerCase()=="h1"){
var entry = event.target.nodeName.toLowerCase();
if (event.target.className) {
entry += "." + event.target.className.replace(/ /g, '.');
}else if(event.target.id){
entry += "#" + event.target.id;
}
rightArrowParents.push(entry);
// }
, где $j
= jQuery Variable
также решить проблему с .. в классе имя
здесь функция замены:
function escapeRegExp(str) {
return str.replace(/([.*+?^=!:${}()|\[\]\/\\])/g, "\\$1");
}
function replaceAll(str, find, replace) {
return str.replace(new RegExp(escapeRegExp(find), 'g'), replace);
}
Спасибо
Убедитесь, что b
находится в формате upperCase, например:
document.getElementById
___________________^
console.log(document.getElementById('test_1')); //Valid function
console.log(document.getElementbyId('test_2')); //Invalid function
<span id="test_1">Test 1</span>
<br>
<span id="test_2">Test 2</span>