1

下面是我想要实现的示例快照

所以我会有文字:“牛津......真实的例子”和需要下划线并在下方有一个单选选项的短语(在图片中没有单选按钮,但我还需要一个单选按钮供用户选择)。

如何使用 css 和 javascript 实现这一点?

谢谢大家的帮助。

4

1 回答 1

1

我相信这就是你想要的:

  http://jsfiddle.net/DerekL/NRpcn/

(为了简单起见,我在示例中使用了jQuery )

var list = ["The", "well known", "meanings", "to give"];    //word list
var output = $("#output"),
    html = output.html();

for(var i = 0; i < list.length; i++) {
    //Wrap each keyword with <span>
    html = html.replace(new RegExp("(" + list[i] + ")", "i"), "<span>$1</span>");
}

output.html(html);

$("p>span").each(function (i) {              //Create the index for each one
    var x = $(this).offset().left,                  //Get the x
        y = $(this).offset().top,                   //Get the y
        width = +$(this).width(),                   //Get the width
        $select = $("<div>").addClass("select");

    $select.css({
        top: y + 20,
        left: x,
        width: width
    })
        .html(String.fromCharCode(65 + i))          //Set the index (A, B, C...)
        .appendTo("body");                          //Append it to the container
});

(该示例将在您调整窗口大小时自动重新计算位置。)

这是实现它的一种方法,还有许多其他方法可以做到这一点。我个人更喜欢这个,因为这不是很容易理解。

于 2013-03-28T02:45:12.717 回答