Araç ipuçlarına satır sonu ekleme


170

HTML araç ipucuna satır sonları nasıl eklenebilir?

Aşağıdaki gibi araç ipucu <br/>ve kullanarak denedim \n:

<a href="#" title="Some long text <br/> Second line text \n Third line text">Hover me</a>

Ancak, bu işe yaramazdı ve gerçek metni <br/>ve \naraç ipucu içinde görebiliyordum . Herhangi bir öneri yardımcı olacaktır.



1
<pre> data-html = "true" </pre> Ref kullanın ve teşekkürler: stackoverflow.com/a/19001875/2278891
— Sunit

Asp.net (C # .NET 4.5 Framework) ekleme Environment.NewLinekodu tarafında satır sonu eklemek için çalışır ... gürültü patırtı .. gürültü! ...
— Dan B

Yanıtlar:


271

&#013;Başlık özelliğinde satır sonu için varlık kodunu kullanmanız yeterlidir.


17
varlık kodu & # 013; çalışmıyor, & # 10; linux ve krom kullanıyorum diğer tarayıcılar hakkında emin değilim
— Krishna

3
Bunu denedim ve ben teftiş elemanı kullanarak enjekte zaman çalışır, ama benim html içine eklemek ve bu karakter ile dağıtmak zaman değil. Eksik olmamın bariz bir nedeni var mı?
— Riaan Schutte

1
Benim &#10için Windows, Chrome v53'te benim için çalışmıyor. Ama iyi &#013;çalıştı.
— Şanslı

9
Ben her iki sürümü de kullandım, &#013;&#010;oldukça iyi çalışıyor gibi görünüyor :)
— Phe0nix

6
& # 013; Firefox v58'de çalışmıyor. Ancak & # 10 iyi çalışıyor. Her iki satır sonunu gerektiği gibi kullanma @ Phe0nix çözümünü kullanmak Chrome, Microsoft Edge ve Firefox'ta çalışmasını sağlamak için iyi çalışır.
— Oldukça Serin

69

Sadece bir veri özelliği ekleyin

veri-html = "true"

ve gitmekte fayda var.

Örneğin. kullanımı:

<i data-html="true" class="tooltip ficon-help-icon" twipsy-content-set="true" data-original-title= "<b>Hello</b> Stackoverflow" </i>

Şu an denediğim araç ipucu eklentilerinin çoğunda çalıştı.


3
data-html = "true" ile başlık metinde <br /> mükemmel çalışıyor.
— Viks

1
Yukarıdaki çözümlerin hiçbiri benim için işe yaramadı. Ama bu iyi çalışıyor.
— abby

64

&#013;Tarzı ile kombine white-space: pre-line; benim için çalıştı.


3
Bunun işe yaraması için biraz zaman harcadım. Aslında white-space: pre-line;stil tabi çok gizlidir.
— Jim D

@JimD Stil kuralının hangi sınıfa / öğeye uygulanması gerekir?
— Judah Meek

Benim için bu araç ipuçlarında herhangi bir özel css olmadan iyi çalışıyor.
— ST-DDT

2
Aradığınız arkadaş budur.
— Henrik Petterson

3
Aslında, karakter şöyle olmalıdır &#010;: stackoverflow.com/questions/6502054/…
— Henrik Petterson


11
\n

stil ile

.tooltip-inner {
    white-space: pre-line;
}

benim için çalıştı.


10

\nMetin arasında ver . Tüm tarayıcılarda çalışır.

Example 
img.tooltip= " Your Text : \n"
img.tooltip += " Your text \n";

Bu benim için işe yarar ve arkasında kod kullanılır.

Umarım bu senin için çalışır


4

Buldum. Sadece böyle yaparak yapılabilir

<a ref="#" title="First Line
                  Second Line
                  Third line">Hover Me</a>

4

Javascript sürümü

Yana &#013;(HTML) bir 0D(heks), bu şekilde temsil edilebilir'\u000d'

str = str.replace(/\n/g, '\u000d');

Ek olarak,

Diğer yanıtlardaki referanslar sayesinde bu karakterle değiştirilen bir AngularJS filtresi sizinle paylaşılıyor\n

app.filter('titleLineBreaker', function () {
    return function (str) {
        if (!str) {
            return str;
        }

        return str.replace(/\n/g, '\u000d');
    };
});

kullanım

<div title="{{ message | titleLineBreaker }}"> </div>

4

sadece \ n başlığında kullanın ve bu css ekleyin

.tooltip-inner {
    white-space: pre-wrap;
}


3

Sadece data-html = "true" ekleyin

<a href="#" title="Some long text <br/> Second line text \n Third line text" data-html="true">Hover me</a>

2

başlık özniteliğinin birden fazla satır üzerine yayılmasıyla yerel HTML araç ipuçlarına satır işaretleri eklemek mümkündür.

Ancak, Q-Tip gibi bir jQuery araç ipucu eklentisi kullanmanızı öneririm: http://craigsworks.com/projects/qtip/ .

Kurulumu ve kullanımı kolaydır. Alternatif olarak, etrafında çok sayıda ücretsiz javascript ipucu eklentisi de var.

edit: ilk ifadede düzeltme.


2

Benim için 2 adımlı bir çözüm (başlığı biçimlendirme ve stil ekleme kombinasyonu) aşağıdaki gibi çalıştı:

1) titleKatılımcıyı biçimlendirin:

<a ref="#" title="First Line
                  Second Line
                  Third line">Hover Me</a>

2) Bu stili tipsöğeye ekleyin :

white-space: pre-line;

IE8, Firefox 22 ve Safari 5.1.7'de test edilmiştir.


Kodda kırık çizgiler olması olsa da, dağınık olduğunu düşünüyorum
— Fandango68

2

Bu kod snippet'ini komut dosyanıza eklemeniz yeterlidir:

    $(function () {
        $('[data-toggle="tooltip"]').tooltip()
    });

ve tabii ki yukarıdaki cevaplarda belirtildiği gibi data-htmlolmalıdır "true". Bu, html etiketlerini ve titleöznitelik değerinin içindeki biçimlendirmeyi kullanmanıza olanak tanır .


+1, Çözümünüz işe yaradı. Benim örnek kod: data-toggle="tooltip" data-html="true" title="some string <br/> some string".
— Pranesh Janarthanan

Duymak 👍 Buna iyi
— kodunu yukarı

1

Jquery Tooltip yardımcı programını kullanıyorsanız , "jquery-ui.js" Javascript dosyasında aşağıdaki metni bulun:

tooltip.find(".ui-tooltip-content").html(content);

ve üstüne koy

content=content.replace(/\&lt;/g,'<').replace(/\&gt;/g,'>');

Umarım bu senin için de işe yarar.


1

Öyleyse bootstrap4 kullanıyorsanız, bu işe yarayacaktır.

<style>
   .tooltip-inner {
    white-space: pre-wrap;
   }

</style>

<script> 
    $(function () {
      $('[data-toggle="tooltip"]').tooltip()
    })
</script>

<a data-toggle="tooltip" data-placement="auto" title=" first line &#010; next line" href= ""> Hover me </a>

Django projesinde kullanıyorsanız aşağıdaki gibi ipuçlarında dinamik veriler de görüntüleyebiliriz:

<a class="black-text pb-2 pt-1" data-toggle="tooltip" data-placement="auto"  title="{{ post.location }} &#010; {{ post.updated_on }}" href= "{% url 'blog:get_user_profile' post.author.id %}">{{ post.author }}</a>

0

Benim için çözüm http://jqueryui.com/tooltip/ :

Ve burada kod (script'i <br/>Works yapan kısmı "content:"):

HTML BAŞLIĞI

<head runat="server">
    <script src="../Scripts/jquery-2.0.3.min.js"></script>
    <link href="Content/themes/base/jquery-ui.css" rel="stylesheet" />
    <script src="../Scripts/jquery-ui-1.10.3.min.js"></script>
<script>
    /*Position:
      my =>  at
      at => element*/
    $(function () {
        $(document).tooltip({
            content: function() {
                var element = $( this );
                if ( element.is( "[title]" ) ) {
                    return element.attr( "title" );
                }

            },
            position: { my: "left bottom-3", at: "center top" } });
    });
</script>
</head>

ASPX veya HTML kontrolü

<asp:TextBox ID="Establecimiento" runat="server" Font-Size="1.3em" placeholder="Establecimiento" title="Texto 1.<br/>TIP: texto 2"></asp:TextBox>

Umarım bu birine yardım eder




0

jquery-ui 1.11.4 kullanıyorsanız:

var tooltip = $.widget( "ui.tooltip", {
    version: "1.11.4",
    options: {
        content: function() {
            // support: IE<9, Opera in jQuery <1.7
            // .text() can't accept undefined, so coerce to a string
            var title = $( this ).attr( "title" ) || "";
            // Escape title, since we're going from an attribute to raw HTML
Replace-->  //return $( "<a>" ).text( title ).html();
by -->      return $( "<a>" ).html( title );
             },

0
AngularJS with Bootstrap UI Tolltip (uib-tooltip), has three versions of tool-tip:

uib-ipucu, uib-ipucu-şablonu ve uib-ipucu-html

- uib-tooltip takes only text and will escape any HTML provided
- uib-tooltip-html takes an expression that evaluates to an HTML string
- uib-tooltip-template takes a text that specifies the location of the template

Benim durumumda, uib-tooltip-html'yi seçtim ve üç parçası var:

  1. yapılandırma
  2. kontrolör
  3. HTML

Misal:

(function(angular) {

//Step 1: configure $sceProvider - this allows the configuration of $sce service.

angular.module('myApp', ['uib.bootstrap'])
       .config(function($sceProvider) {
           $sceProvider.enabled(false);
       });

//Step 2: Set the tooltip content in the controller

angular.module('myApp')
       .controller('myController', myController);

myController.$inject = ['$sce'];

function myController($sce) {
    var vm = this;
    vm.tooltipContent = $sce.trustAsHtml('I am the first line <br /><br />' +
                                         'I am the second line-break');

    return vm;
}

 })(window.angular);

//Step 3: Use the tooltip in HTML (UI)

<div ng-controller="myController as get">
     <span uib-tooltip-html="get.tooltipContent">other Contents</span>
</div>

Daha fazla bilgi için lütfen burayı kontrol edin


0

.Text () yerine .html () kullanmak benim için çalıştı. Örneğin

.html("This is a first line." + "<br/>" + "This is a second line.")

0

kullanımı &#13;çalışmalıdır ( Chrome , Firefox ve Edge'de test ettim ):

let users = [{username: 'user1'}, {username: 'user2'}, {username: 'user3'}];
let favTitle = '';
for(let j = 0; j < users.length; j++)
    favTitle += users[j].username + "&#13;";

$("#item").append('<i title="In favorite users: &#13;' + favTitle + '">Favorite</i>');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id = item></div>


0

Merhaba bu kod tüm tarayıcıda çalışacak !! IE için krom ve safari ve ul li yeni satır için kullanılan

 function genarateMultiLIneCode(){
        var =values["a","b","c"];
        const liStart = '<li>';
              const liEnd = '</li>';
              const bullet = '&#8226; ';     
              var mergedString = ' ';
              const unOrderListStart='<ul>'
              const unOrderListEnd='</ul>'
              const fakeNewline = '&#013;&#010;';
              for (let i = 0; i < values.length; i++) {
                   mergedString += liStart + bullet + values[i] + liEnd + fakeNewline;
              }
              const tempElement = document.createElement("div");
              tempElement.innerHTML = unOrderListStart + mergedString + unOrderListEnd;    
              return tempElement.innerText;
            }
        }

0

Bootstrap araç ipucunu kullanabilirsiniz ve html seçeneğini true olarak ayarlamayı unutmayın.

<div id="tool"> tooltip</div>
$('#tool').tooltip({
     title: 'line one' +'<br />'+ 'line two',
     html: true
});
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>

-1

&#xA;Başlık özelliğinde satır sonu için varlık kodunu kullanmanız yeterlidir.

<a title="First Line &#xA;Second Line">Hover Me </a>


-1

Bu css size yardımcı olacaktır.

    .tooltip {
      word-break: break-all;
    }

or if you want in one line

    .tooltip-inner {
      max-width: 100%;
    }
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.