@Kozgemikin

Код не работает, что делать?

Написал следующий код для вызова диалогового окна , но функция почему-то не работает если её ввести в коде , но работает если её ввести в консоли . Код такой , вопрос в названии :
$("body").append('<img src="dialog.png" , id="dialog" , width=800 , height=800>') ;
$("body").append('<button id="close">Закрыть</button>') ;
$("body").append('<h2 id="name">чел какой-та</h2>') ;
$("body").append('<img id="icon" , src="img1.png" , width="200 , height=200">') ;
$("body").append('<h2 id="dates">1999 - н.д.</h2>')
$("#dialog").fadeOut(1) ;
$("#close").fadeOut(1) ;
$("#name").fadeOut(1) ;
$("#icon").fadeOut(1) ;
$("#dates").fadeOut(1) ;
$("#dialog").offset({
top : 200 ,
left : 400 
}) ;
$("#close").offset({
top : 950 ,
left : 430
}) ;
$("#name").offset({
top : 225 ,
left : 700
}) ;
$("#icon").offset({
top : 213 ,
left : 413
}) ;
$("#dates").offset({
top : 270 ,
left : 750
}) ;

var close = function() {
$("#dialog").fadeOut(1000) ;
$("#close").fadeOut(1000) ;
$("#name").fadeOut(1000) ;
$("#icon").fadeOut(1000) ;
$("#dates").fadeOut(1000) ;
} ;
$("#close").click(close) ;

var open = function() {
$("#dialog").fadeIn(1000) ;
$("#close").fadeIn(1000) ;
$("#name").fadeIn(1000) ;
$("#icon").fadeIn(1000) ;
$("#dates").fadeIn(1000) ;
} ;

var show = function() {
$("#name").text(this.name + " " + this.title) ;
document.getElementById("icon").src = this.link ;
document.getElementById("icon").width = 200 ;
document.getElementById("icon").height = 200 ;
$("#dates").text(this.birthdate + " - " + this.deafhdate) ;
$("#" + this.id).click(open) ;
} ;
var Man = function (left , top , id , name , title , birthdate , deafhdate) {
    this.left = left ;
    this.top = top ;
    this.id = id ;
    this.name = name ;
    this.title = title ;
    this.birthdate = birthdate ;
    this.deafhdate = deafhdate ;
} ;

Man.prototype.draw = function(link) {
this.manElement = $('<img src=' + link + ' , id=' + this.id + ' , width=200 , height=200>') ;
 this.manElement.css({
position : "absolute" ,
left: this.left ,
top: this.top
}) ;
Man.prototype.link = link ;
$("body").append(this.manElement) ;
} ;

Man.prototype.dialog = function() {
    $("#" + this.id).click(show.bind(this)) ;
} ;
var man1 = new Man(800 , 400 , "scot1" , "Чел" , "какой-то" , 1998 , 2019) ;
man1.draw("img1.png") ;
man1.dialog() ;
  • Вопрос задан
  • 97 просмотров
Решения вопроса 1
coderisimo
@coderisimo Куратор тега JavaScript
а если запихнуть все в
$( document ).ready(function() {......
?
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы