Estou tentando exibir HTML dentro de um popover de inicialização, mas de alguma forma não está funcionando. Encontrei algumas respostas aqui, mas não vai funcionar para mim. Por favor, deixe-me saber se estou fazendo algo errado.
<script>
$(function(){
$('[rel=popover]').popover({
html : true,
content: function() {
return $('#popover_content_wrapper').html();
}
});
});
</script>
<li href="#" id="example" rel="popover" data-content="" data-original-title="A Title">
popover
</li>
<div id="popover_content_wrapper" style="display: none">
<div>This is your div content</div>
</div>
html
twitter-bootstrap
popover
Adrian Mojica
fonte
fonte
Respostas:
Você não pode usá-
<li href="#"
lo, pois<a href="#"
é por isso que não estava funcionando. Altere-o e está tudo bem.Aqui está o JSFiddle trabalhando, que mostra como criar popover de autoinicialização.
Partes relevantes do código estão abaixo:
HTML:
JavaScript:
E, a propósito, você sempre precisa pelo menos
$("[data-toggle=popover]").popover();
ativar a popover. Mas no lugar dedata-toggle="popover"
você também pode usarid="my-popover"
ouclass="my-popover"
. Lembre-se de habilitá-los usando, por exemplo:$("#my-popover").popover();
nesses casos.Aqui está o link para a especificação completa: Bootstrap Popover
Bônus:
Se, por algum motivo, você não gostar ou não puder ler o conteúdo de um pop-up nas tags
data-toggle
etitle
. Você também pode usar, por exemplo, divs ocultos e um pouco mais de JavaScript. Aqui está um exemplo sobre isso.fonte
você pode usar o atributo
data-html="true"
:fonte
Outra maneira de especificar o conteúdo de popover de maneira reutilizável é criar um novo atributo de dados
data-popover-content
e usá-lo assim:HTML:
JS:
Isso pode ser útil quando você tem muito html para colocar em seus popovers.
Aqui está um exemplo de violino: http://jsfiddle.net/z824fn6b/
fonte
Você precisa criar uma instância de popover com a opção html ativada (coloque isso no seu arquivo javascript após o código JS do popover):
$('.popover-with-html').popover({ html : true });
fonte
Eu usei um pop dentro de uma lista, estou dando um exemplo via HTML
fonte
Você só precisa colocar
data-html="true"
o popover do link. Vai dar certofonte
Esta é uma pequena modificação na excelente resposta de Jack .
A seguir, os popovers simples, sem conteúdo HTML, permanecem inalterados.
JavaScript:
fonte
Eu realmente odeio colocar HTML longo dentro do atributo, aqui está a minha solução, clara e simples (substitua? Pelo que você quiser):
então
fonte
Essa é uma pergunta antiga, mas é outra maneira, usando o jQuery para reutilizar o popover e continuar usando os atributos de dados de autoinicialização originais para torná-lo mais semântico:
A ligação
Conteúdo personalizado para mostrar
Javascript
Mexa com exemplo completo: http://jsfiddle.net/tomsarduy/262w45L5/
fonte
Você pode alterar o 'template / popover / popover.html' no arquivo 'ui-bootstrap-tpls-0.11.0.js' Write: "bind-html-unsafe" em vez de "ng-bind"
Ele mostrará todo o popover com html. * seu html inseguro. Use somente se você confiar no html.
fonte
Você pode usar o evento popover e controlar a largura pelo atributo 'data-width'
fonte
Adicione isso na parte inferior do seu arquivo popper.js:
Fonte: https://github.com/twbs/bootstrap/issues/23590
fonte