프론트엔드-코드 237

태그삽입

$('#box1').prepend('삽입된 내용1'); $('#box1').append('삽입된 내용2'); $('#box1').before('자신의 앞에 삽입된 내용1'); $('#box1').after('자신의 뒤에 삽입된 내용1'); 이렇게 태그도 넣을 수 있음. $('삽입된 내용1').prependTo('#box2'); $('삽입된 내용2').appendTo('#box2'); $('자신의 앞에 삽입된 내용').insertBefore('#box2'); $('자신의 뒤에 삽입된 내용').insertAafter('#box2'); To는 넣을 대상

offset(), position()

console.log( $('.box').offset().left ); offset() html 기준으로 left, top등의 위치를 return함 아마 margin만큼? 인듯..? console.log($('.box').position().left); position() 부모를 기준으로 left, top등의 위치를 반환 부모의 margin, padding, border 포함해서 그 위치 left띄어진 것. margin, padding, border까지가 부모니 그거 다포함한 바깥의 left가 left니 $('.box p').offset({left:150, top:100}); 이렇게 변경할 수 있음

prop()

attr은 속성값 그 자체로, prop()는 bool식으로 제어용도로 사용함. 그래서 checked나 disable 같은 bool 형식이 값인 속성을 다룰 때 많이 사용. $('input:checkbox').eq(0).attr('checked','checked'); $('input:checkbox').eq(1).prop('checked', true); 근데, $('input:checkbox').eq(1).attr('checked', true); 이것도 되긴 함.. 이 둘의 차이는, attr은 true를 문자열로 전달한다고 함. 이 bool속성이 아닌 문자열이 브라우저 호환이라던지 문제가 있을 수 있다고 함. 그리고, html에서 checked나 disabled같은 bool속성은 일반적으로 값이 있는게 아..