클릭 대신 부트 스트랩 팝 오버가 호버에서 나타나거나 사라지도록하십시오.
Bootstrap의 Popover 로 웹 사이트를 구축 중이며 클릭 대신 팝 오버가 호버에 표시되는 방법을 알 수 없습니다.
내가하고 싶은 것은 누군가 링크를 클릭하는 대신 링크 위로 마우스를 가져 가면 팝 오버가 나타나고 이동하면 팝 오버가 사라지게하는 것입니다. 설명서에는 data 속성 또는 jquery를 사용할 수 있다고 나와 있습니다. 여러 팝 오버가 있기 때문에 jquery로 훨씬 더하고 싶습니다.
설정 trigger
에 팝 오버의 옵션 hover
대신 click
은 IS, 기본 하나를.
data-*
마크 업의 속성 중 하나를 사용하여 수행 할 수 있습니다 .
<a id="popover" data-trigger="hover">Popover</a>
또는 초기화 옵션으로 :
$("#popover").popover({ trigger: "hover" });
여기 데모가 있습니다.
접근성을 위해 포커스 트리거를 추가해야한다고 생각합니다.
즉 $("#popover").popover({ trigger: "hover focus" });
팝 오버 자체를 가리 키려면 수동 트리거를 사용해야합니다.
이것은 내가 생각해 낸 것입니다.
function enableThumbPopover() {
var counter;
$('.thumbcontainer').popover({
trigger: 'manual',
animation: false,
html: true,
title: function () {
return $(this).parent().find('.thumbPopover > .title').html();
},
content: function () {
return $(this).parent().find('.thumbPopover > .body').html();
},
container: 'body',
placement: 'auto'
}).on("mouseenter",function () {
var _this = this; // thumbcontainer
console.log('thumbcontainer mouseenter')
// clear the counter
clearTimeout(counter);
// Close all other Popovers
$('.thumbcontainer').not(_this).popover('hide');
// start new timeout to show popover
counter = setTimeout(function(){
if($(_this).is(':hover'))
{
$(_this).popover("show");
}
$(".popover").on("mouseleave", function () {
$('.thumbcontainer').popover('hide');
});
}, 400);
}).on("mouseleave", function () {
var _this = this;
setTimeout(function () {
if (!$(".popover:hover").length) {
if(!$(_this).is(':hover')) // change $(this) to $(_this)
{
$(_this).popover('hide');
}
}
}, 200);
});
}
설명한 기능은 Bootstrap 툴팁을 사용하여 쉽게 얻을 수 있습니다.
<button id="example1" data-toggle="tooltip">Tooltip on left</button>
그런 다음 요소에 대해 tooltip () 함수를 호출하십시오.
$('#example1').tooltip();
http://getbootstrap.com/javascript/#tooltips
이러한 답변 중 몇 가지를 시도하고 여러 링크로 확장이 잘 안되는 것을 발견 한 후 (예 : 허용되는 답변에는 모든 링크에 대해 jquery 줄이 필요함) 작업을 수행하는 데 최소한의 코드가 필요한 방법을 발견했습니다. 적어도 Chrome에서는 완벽하게 작동하는 것으로 보입니다.
이 줄을 추가하여 활성화하십시오.
$('[data-toggle="popover"]').popover();
그리고이 설정은 앵커 링크에 연결됩니다.
data-toggle="popover" data-trigger="hover"
See it in action here, I'm using the same imports as the accepted answer so it should work fine on older projects.
'Programing' 카테고리의 다른 글
다중 그라데이션 모양 (0) | 2020.05.22 |
---|---|
창 크기 조정의 jQuery (0) | 2020.05.22 |
두 개의 열과 자동 크기 조정 된 이미지가있는 그리드 뷰 (0) | 2020.05.22 |
OS X의`date` 명령에는 ISO 8601`-I` 옵션이 없습니까? (0) | 2020.05.22 |
mysql 데이터베이스에서 문자열의 모든 항목 검색 (0) | 2020.05.22 |