Important: this documentation is not applicable to your currently selected format ads!
amp-selector
Description
사용자가 선택할 수 있는 옵션 메뉴를 표시하는 컨트롤을 나타냅니다.
Required Scripts
<script async custom-element="amp-selector" src="https://cdn.ampproject.org/v0/amp-selector-0.1.js"></script>
Supported Layouts
사용자가 선택할 수 있는 옵션 메뉴를 표시하는 컨트롤을 나타냅니다.
필수 스크립트 | <script async custom-element="amp-selector" src="https://cdn.ampproject.org/v0/amp-selector-0.1.js"></script> |
지원되는 레이아웃 | 전체 |
예 | AMP By Example의 amp-selector 예를 참조하세요. |
동작
AMP 선택기는 사용자가 하나 이상 선택할 수 있는 옵션 목록을 표시하는 컨트롤입니다. 옵션의 콘텐츠는 텍스트에 국한되지 않습니다.
amp-selector
에 임의의 HTML 요소 또는 AMP 구성요소(예:amp-carousel
,amp-img
등)가 포함될 수 있습니다.amp-selector
에는 중첩된amp-selector
컨트롤을 포함할 수 없습니다.- 선택 가능한 옵션은 요소에
option
속성을 추가하고 속성에 값을 할당하여 설정할 수 있습니다(예:<li option='value'></li>
). - 사용하지 않는 옵션은 요소에
disabled
속성을 추가하여 설정할 수 있습니다(예:<li option='d' disabled></li>
). - 사전 선택된 옵션은 요소에
selected
속성을 추가하여 설정할 수 있습니다(예:<li option='b' selected></li>
). - 여러 항목을 선택할 수 있도록
multiple
속성을amp-selector
요소에 추가합니다. 기본적으로amp-selector
를 사용하면 한 번에 하나만 선택할 수 있습니다. - 전체
amp-selector
를 사용하지 않으려면disabled
속성을amp-selector
요소에 추가합니다. amp-selector
에name
속성이 포함되어 있고amp-selector
가form
태그 안에 있는 경우 양식에서 제출 이벤트가 발생하면amp-selector
가 라디오 버튼/체크박스 그룹과 같이 동작하고amp-selector
이름과 비교하여 선택한 값(옵션에 할당된 값)을 제출합니다.
예:
<form id="form1" action="/" method="get" target="_blank">
<amp-selector name="single_image_select" layout="container">
<ul>
<li><amp-img src="/img1.png" width="50" height="50" option="1"></amp-img></li>
<li><amp-img src="/img2.png" width="50" height="50" option="2"></amp-img></li>
<li option="na" selected="">해당 사항 없음</li>
</ul>
</amp-selector>
<amp-selector name="multi_image_select" layout="container" multiple="">
<amp-img src="/img1.png" width="50" height="50" option="1"></amp-img>
<amp-img src="/img2.png" width="50" height="50" option="2"></amp-img>
<amp-img src="/img3.png" width="50" height="50" option="3"></amp-img>
</amp-selector>
<amp-selector name="multi_image_select_1" layout="container" multiple="">
<amp-carousel id="carousel-1" width="200" height="60" controls="">
<amp-img src="/img1.png" width="80" height="60" option="a"></amp-img>
<amp-img src="/img2.png" width="80" height="60" option="b" selected=""></amp-img>
<amp-img src="/img3.png" width="80" height="60" option="c"></amp-img>
<amp-img src="/img4.png" width="80" height="60" option="d" disabled=""></amp-img>
</amp-carousel>
</amp-selector>
</form>
<p><amp-selector name="multi_image_select_2" layout="container" multiple="" form="form1">
<amp-carousel height="300" id="carousel-1" type="slides" width="400" controls="">
<amp-img height="60" src="/img1.png" width="80" option="a"></amp-img>
<amp-img height="60" src="/img2.png" width="80" option="b" selected=""></amp-img>
<amp-img height="60" src="/img3.png" width="80" option="c"></amp-img>
<amp-img height="60" src="/img4.png" width="80" option="d"></amp-img>
</amp-carousel>
</amp-selector>
선택 항목 지우기
요소를 탭하거나 클릭할 때 선택 항목을 모두 지우려면 요소에서 on
작업 속성을 설정하고 clear
작업 방법으로 AMP 선택기 id
를 지정합니다.
예:
<button on="tap:mySelector.clear">Clear Selection</button>
<amp-selector id="mySelector" layout="container" multiple>
<div option>Option One</div>
<div option>Option Two</div>
<div option>Option Three</div>
</amp-selector>
속성
<amp-selector>
의 속성
disabled, form, multiple, name | 위의 속성은 표준 HTML에서와 동일하게 동작합니다. select [](https://developer.mozilla.org/en/docs/Web/HTML/Element/select). |
keyboard-select-mode | keyboard-select-mode 속성을 통해서는 amp-selector 내부에 있는 옵션의 키보드 탐색 동작을 지시합니다.
|
<amp-selector>
옵션의 속성
option | 옵션이 선택 가능함을 나타냅니다. 값이 지정된 경우 양식과 함께 값의 콘텐츠가 제출됩니다. |
disabled, selected | 위의 속성은 표준 HTML에서와 동일하게 동작합니다. [option ](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/option). |
이벤트
이벤트에서 on
속성을 사용하여 다른 AMP 구성요소에서 작업을 트리거할 수 있습니다.
예: on="select: my-tab.show"
AMP 작업 및 이벤트에 관해 자세히 읽어보세요.
select | 사용자가 옵션을 선택하면 amp-selector 에서 select 이벤트를 트리거합니다. 옵션을 선택하거나 선택 해제하면 다중 선택기 및 단일 선택기에서 이 이벤트를 실행합니다. 사용하지 않는 옵션을 탭하면 select 이벤트가 트리거되지 않습니다.
|
유효성 검사
AMP 유효성 검사기 사양에서 amp-selector 규칙을 참조하세요.
이 문서를 수십 번 읽었음에도 여전히 궁금한 점이 남아 있나요? 다른 개발자들도 같은 심정일지 모릅니다. Stack Overflow에서 소통해 보세요.
Stack Overflow로 이동 버그나 누락된 기능을 발견하셨나요?AMP 프로젝트는 여러분의 참여와 기여를 적극 환영합니다! 오픈 소스 커뮤니티를 통해 지속적으로 활동해 주셔도 좋지만 관심 있는 주제에 한 번만 기여하셔도 큰 도움이 됩니다.
GitHub로 이동하기