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.