Home > Software engineering >  Tooltip in string - Svelte
Tooltip in string - Svelte

Time:03-19

Is it possible to pass the tooltip into a string of some variable in Svelte? I know that svelte has {@html expression} which works fine for basics like strong, h1 ... but is there any way how to pass some class with tooltip into the text of a string.

Here is an example:

<script>

let description = 'some text where I need to pass the tooltip. Is it possible?';
    
</script>

{description} 

CodePudding user response:

Like commented your question is a bit vague - but I guess you want to define a tooltip via a variable? Then this is how you could do this REPL

<script>
    import Comp from './Comp.svelte'

    let htmlStringWithTooltip = `
    <style>
    [data-tooltip] {
        position: relative;
    }
    [data-tooltip]:hover::before {
        content: attr(data-tooltip);
        position: absolute;
        left: 50%;
        transform: translate(-50%, -100%);
    }
    </style>
    <span data-tooltip='The tooltip'>Hello</span>
    `
</script>

<Comp {htmlStringWithTooltip} />

<style>

    :global(body) {
        padding-top: 3rem;  
    }

</style>
Comp.svelte
<script>

    export let htmlStringWithTooltip = ""

</script>

{@html htmlStringWithTooltip}
  • Related