Я новичок в javascript и пытаюсь создать элемент с определенным html внутри.
Это мой код:
function newTask()
{
var newtask = document.CreateElement('li');
newtask.setAttribute('id','newtask');
newtask.innerHTML="DeveloperSnippets";
document.getElementById('newtaskcontainer').appendChild(newtask);
document.getElementById('newtask').innerHTML='<input type="text" size="" value="Click here to add new task"> <a href=""><img src="IMG/delete.png" alt="delete" class="fr" /></a>';
}
Я считаю, что это правильно, но я не знаю, как заставить это срабатывать, когда пользователь нажимает кнопку.
У меня есть этот код во внешнем файле js, поэтому я не хочу иметь какой-либо встроенный JavaScript.
UPDATE
Привет, спасибо за вашу помощь, ребята, у меня были проблемы со связыванием с моим JS-файлом, из-за чего ни один из ваших кодов не работал, но со временем я осознал проблему, которую я уже обнаружил сам. Но вы, ребята, все еще можете помочь мне, если хотите:)
Вот что я получил сейчас:
function newTask()
{
var addTask= document.createElement("div");
addTask.id = "newtask";
addTask.innerHTML = "/* My HTML */"
document.getElementById("newtaskcontainer").appendChild( addTask);
$("#newtask").animate({opacity: "1.0", left: "+=1000"}, 500);
}
К сожалению, мне пришлось использовать атрибут html onclick, но сейчас это подойдет. У меня проблема из-за последней строки кода
$("#newtask").animate({opacity: "1.0", left: "+=1000"}, 500);
он больше не создает div, он просто продолжает толкать div в сторону, и мне нужно сделать это, это создать div, который скользит слева (что он делает), но потом, когда я нажмите кнопку, чтобы получить новый div, он фактически создал новый div вместо того, чтобы просто толкать предыдущий div дальше вправо.
Я надеюсь, что это имеет смысл, и большое спасибо всем за вашу помощь.