Я не понимаю, почему метод trim()
не работает для меня здесь:
function addLink() {
var body_element = document.getElementsByTagName('body')[0];
var selection;
selection = window.getSelection();
selection = selection.trim(); // *** HERE IT IS! ***
var pagelink = "<br /><br /> Read more at: <a href='"+document.location.href+"'>"+document.location.href+"</a><br />Copyright © Name";
var copytext = "“" + selection + "”" + pagelink;
var newdiv = document.createElement('div');
newdiv.style.position='absolute';
newdiv.style.left='-99999px';
body_element.appendChild(newdiv);
newdiv.innerHTML = copytext;
selection.selectAllChildren(newdiv);
window.setTimeout(function() {
body_element.removeChild(newdiv);
},0);
}
document.oncopy = addLink;
Дело не только в том, что он не делает то, что должен, но кажется, что есть Ошибка в использовании этого метода здесь, так как он нарушает функцию.
Я получил эту функцию копирования-атрибуции javascript через Интернет. Само по себе это прекрасно работает, но мне нужно добавить двойные кавычки в начале и в конце скопированного выделения, поэтому мне нужно добавить метод trim()
, чтобы избежать копирования таких предложений, как:
" Здравствуйте, у меня есть пустое место в начале! "
Я пытался поместить метод trim()
везде, но что бы я ни делал, это полностью нарушает функцию. Я прочитал и перечитал объяснение метода, и я не вижу, что я делаю неправильно ... Я имею в виду, это должно быть довольно просто: вы берете строку, добавляете к ней метод trim()
, и это ' Я создам новую строку без начальных или конечных пробелов ... Но, похоже, я что-то здесь упускаю, так как это просто нарушает функцию ... Javascript и я никогда не смог стать хорошими друзьями, если честно; Я всегда находил это разочаровывающим и довольно запутанным, как позу, скажем, PHP, которая не возражает против того, чтобы ее поместили так или иначе! (Конечно, я говорю о том, как это кажется моему мозгу! Я уверен, что все вы, профессионалы здесь, прекрасно это понимаете и знаете, где что-то go и почему - и почему они не работают так, как я ». я использую их!)
Во всяком случае, я также пытался использовать метод strip()
(хотя я не могу понять, в чем разница), и результат тот же: он нарушает функцию.
Заранее благодарим за любой вклад в это!