jQuery函数,显示DIV

时间:2016-05-03 21:37:09

标签: jquery

Hello Stackers,

这个时候不是问题或者是Bug,只是没有知识。我试图创建一个函数,以便我可以启动DIV。我希望如果我运行pushmessage('type','title','content'),jQuery一个div显示.show()并填入那些参数。我的问题是,这是否可能,是否需要PHP?或者它是纯粹的jQuery?应该创建div,因为它再次隐藏。 div在页面上没有任何地方。是的它应该可见。

我的DIV

<div class="pushmessage + TYPE +">
        <span class="title">+ TITLE +</span><br/>
        <span class="content">+ CONTENT +</span>
        <div class="loader"></div>
    </div>

谢谢,

2 个答案:

答案 0 :(得分:1)

您可以将html作为一个字符串传递,并在点击或其他一些事件中将其添加到DOM

&#13;
&#13;
var pushmessage = function(type, title, content) {
  var html = '<div class="pushmessage ' + type + '"><span class="title">' + title + '</span><br/><span class="content">' + content + '</span><div class="loader"></div></div>'
  $(html).hide().appendTo("body").fadeIn("fast");
}

$('button').click(function() {
  pushmessage('lorem', 'Random title', 'Lorem ipsum dolor sit amet.');
})
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button>Add div</button>
&#13;
&#13;
&#13;

答案 1 :(得分:1)

由于页面上尚未显示div,因此您需要某种占位符才能获得所需的位置。您必须添加样式等,以便将其放置在您想要的位置。

<div id="placeHolder"></div>

在javascript中:

function pushmessage(type, title, content)
{
    var newDiv = '<div class="pushmessage' + type +'">';
    newDiv+= '<span class="title">' +title + '</span><br/>';
    newDiv+= '<span class="content">' + content + '</span>';
    newDiv+= '<div class="loader"></div>';
    newDiv+= '</div>';
    $('#placeHolder').html(newDiv);
}

这可能不是你想要的,但它应该让你开始。

旁注:这都是javascript。除非你需要从服务器返回一些东西,否则你不会在这里需要PHP。