2011-01-09 6 views
0

나는 themselvs를 반복하는 코드 블록을 가지고 있습니다. 코드 블록을 작성하여 많은 페이지에서 반복되는 meen html, javascript 및 css. 예를 들어 는 :반복 코드 블록

.filter { 
    background-color:black; 
} 

$(document).ready(function(){ 
    $('[name=aaclick]').click(function(){ alert('aa!'); }); 
}); 

<div class="filter"> 
    aaa<input type="text" /> 
    <a name="aaclick">click</a> 
</div> 
  1. 나는 함께 하나의 단위의 그 세 부분을 결합 할 수 있나요?
  2. 다른 페이지에서이 코드를 반복해서 쓰지 못하게하려면 어떻게해야합니까?
+2

서버 측 언어를 마음대로 사용할 수 있습니까? ASP가 변경됩니까? –

+1

그림자 마법사가 정확합니다. ASP (또는 P로 끝나는 다른 3 글자 약자)의 생각에 개인적으로 기대지 말기는하지만 이것은 확실히 서버의 일처럼 보입니다. – Hemlock

+0

asp.net을 사용하고 있지만 서버 측에 의존하고 싶지 않습니다. 클라이언트 측만 필요하기 때문입니다. – Naor

답변

1

단일 부품 3 개를 함께 결합 할 수 있습니까?
서로를 더 가깝게 만듭니다 (적어도 2의 부품 수를 줄이십시오). 그러나 나는 권장하지 않습니다. 스타일은 스타일, javascript, javascript 및 html with html로 유지됩니다.

다른 페이지에서이 코드를 반복해서 쓰지 못하게하려면 어떻게해야합니까?
1.이 스타일 정의를 모든 페이지에 포함 된 일반적인 CSS 파일에 넣으십시오. 반복하지 마라.
2.이 자바 스크립트 코드를 모든 페이지에 포함 된 공통 js 파일에 넣으십시오. 반복하지 마라.
3. 자바 스크립트에서 나머지 콘텐츠를 생성하는 경우 세 번째 부분을 <div class="filter"></div>으로 줄일 수 있습니다. 이제이

$(document).ready(function(){ 
    $('.filter').each(function() { 
     $(this).append('aaa').append($('<input/>').attr('type', 'text')); 
     ... 
     $(this).find('input[name=aaclick]').click(...); 
    }) 
}); 

같은 것을, 당신은 HTML 만 <div class="filter"></div>을 넣을 수 있습니다, 나머지는 자동 생성됩니다.

+0

실제로 그런 공통 코드에 대한 플러그인을 만들 수 있습니까? – Naor

+0

@ Naor 원한다면 '플러그인'이라고 부를 수 있습니다. 나는 당신이이 코드를 '다른 페이지에서 반복적으로 사용한다'고 말했기 때문에 복사 양을 줄였습니다. –

0

템플릿 도구가 필요할 수 있습니다.

+0

자세한 내용을 더 자세히 설명 드리겠습니다. – Naor

+0

http://en.wikipedia.org/wiki/Template_engine_(web)#Example 사용중인 언어에 대한 템플릿 엔진을 찾아서 살펴보십시오. –

0

한 가지 방법은 css, js 및 html 파일로 분할하는 것입니다. 적절하게 이름이 지정되어 관련성이 있음을 알 수 있습니다.

그런 다음 코드를 사용하여 표준 방법을 사용하여 페이지에 추가하면 기능을 함께 유지할 수 있습니다. 단순히 사용자 컨트롤을 빌드 당신이 <UC:MyBlock runat="server" />을 표시 할 필요 때마다 다음 .ascx 파일에-이기 때문에 그 그것 뿐이다 전체 "반복"블록을 넣어 ASP.NET의 경우

0

- 유연하고 신뢰할 수있는 100 %에 정말 .. 없음 클라이언트 측 템플릿, jQuery 플러그인 등을 뒤죽박죽으로 다루는 이유.

+0

사용자 컨트롤이 jquery plugin보다 나은 이유는 무엇입니까? -이게 내 단점이야. – Naor

+0

@Naor - jQuery는 완벽하지 않으며 결국에는 클라이언트 쪽 JavaScript가 모든 단점을 가지고 있습니다 ... 서버 쪽 컨트롤을 사용하면 항상 모든 브라우저에 동일한 HTML 출력을 보냅니다. –