discuz!中的JS用法
1、加积分提示:<pre>
showPrompt(null, null, '\u4fee\u6539\u8d34\u5b50\u6807\u9898\u5931\u8d25', 3000, "");
</pre>
<p>错误提示:</p>
<pre>
showError('aaaa');</pre>
2、弹层:
<pre>
showDialog('ddddd');</pre>
<br />
3、弹层并跳转到某页面url:<br />
<br />
showDialog('成功', 'notice', null, function(){location.replace('forum.php?mod=forumdisplay&fid=7&page=1');}, null, null, null, null, null, null, 3); 源文地址:https://www.darlang.com/2017/03/show-series-of-functions-using-the-summary/<br />
<p>discuz 中 common.js 的 show() 系列函数浮动弹窗的几个有:</p>
<p>showMenu(v),</p>
<p>setMenuPosition(showid, menuid, pos),</p>
<p>showDialog(msg, mode, t, func, cover),</p>
<p>showWindow(k, url, mode, cache, menuv),</p>
<p>showTip(ctrlobj),</p>
<p>showPrompt(ctrlid, evt, msg, timeout)。</p>
<p> </p>
<h3>showMenu(v)</h3>
<p>只有一个数组格式的参数 v 例如:{'key1':'value1','key2':'value2','key3':'value3'}</p>
<p>目前,数组 v 支持传递的 key 有:</p>
<ol start="1">
<li>key 默认值 含义</li>
<li>-----------------------------------------------------------</li>
<li>ctrlid ' ' 控制菜单的 id</li>
<li>showid ctrlid 弹出菜单的 id</li>
<li>menuid showid + '_menu' 显示菜单的 id</li>
<li>evt 'mouseover' 响应函数的事件</li>
<li>pos '43' 菜单位置,"*" 不需要设置位置(详见 setMenuPosition 文档)</li>
<li>duration 2 菜单持续(参见注释1)</li>
<li>timeout 250 菜单持续时间,单位:毫秒</li>
<li>mtype 'menu' 菜单类型(参见注释2)</li>
<li>maxh 500 菜单最大高度,实际高度超过 maxh 时菜单将出现垂直滚动条</li>
<li>layer 1 菜单层级,大于 0 的任意整数</li>
<li>cache 1 是否缓存菜单,0:否 1:是</li>
<li>drag '' 拖拽菜单对象的id,如果希望整个菜单都可以拖拽请设置 drag 为 1</li>
<li>fade 0 淡入淡出效果,0:否 1:是</li>
<li>cover 0 覆盖整个页面,0:否 1:是</li>
<li>zindex JSMENU['zIndex']['menu'] 菜单层叠顺序(参见注释3)</li>
</ol>
<p>注释1</p>
<ul>
<li>3:菜单一直显示 除非执行 hideMenu() 或者页面 unload</li>
<li>2:鼠标移开 ctrlObj 及 menuObj 即开始计时 timeout 毫秒后消失</li>
<li>1:鼠标移开 ctrlObj 即开始计时 timeout 毫秒后消失</li>
<li>0:菜单显示即开始计时 timeout 毫秒后消失</li>
</ul>
<p>注释2</p>
<ul>
<li>menu:普通菜单</li>
<li>win:浮窗</li>
<li>prompt:提示信息</li>
<li>dialog:对话框</li>
</ul>
<p>注释3</p>
<ul>
<li>JSMENU['zIndex'] = {'win':200,'menu':300,'prompt':400,'dialog':500};</li>
</ul>
<p><strong>举个例子:</strong>鼠标悬浮弹出一个ID为 'aaabbbccc' 的内容的浮窗:</p>
<ol start="1">
<li><a href="javascript:void(0);" id="aaabbbccc" onmouseover="showMenu({'ctrlid':'aaabbbccc'});" initialized="true">鼠标悬浮会有内容</a></li>
<li><div id="aaabbbccc_menu" style="display: none;">悬浮将会显示我</div></li>
</ol>
<p>注意别忘了弹出的标签 ID 是 ctrlid, 被弹出的需要加给 id 加一个_menu 例如 aaabbbccc 是 a 标签 id,aaabbbccc_menu是被弹出内容标签的 id。</p>
<p> </p>
<h3>setMenuPosition(showid, menuid, pos)</h3>
<ol start="1">
<li>showid 弹出菜单的 id</li>
<li>menuid 菜单 id</li>
<li>pos 菜单位置,必须是字串类型,默认值 '43'(参见注释4)</li>
</ol>
<p>采用基点+方向二元定位法可衍生出几十种菜单位置,基点是指基于 showObj 的某一点</p>
<p>基点:</p>
<ul>
<li>0:中心</li>
<li>1:左上</li>
<li>2:右上</li>
<li>3:右下</li>
<li>4:左下</li>
</ul>
<p>方向:</p>
<ul>
<li>0:中心</li>
<li>1:左上</li>
<li>2:右上</li>
<li>3:右下</li>
<li>4:左下</li>
</ul>
<p> </p>
<h3>showDialog(msg, mode, t, func, cover)</h3>
<ol start="1">
<li>msg 对话框内容</li>
<li>mode 对话框模式</li>
<li>t 对话框标题</li>
<li>func “确定”执行的函数 可以是一个函数(推荐)也可以是一段 js 代码</li>
<li>cover 是否覆盖整个页面 1:是 0:否</li>
</ol>
<p>注释5</p>
<ul>
<li>info 没有按钮 / 一般信息</li>
<li>notice 有确定按钮 / 通知信息</li>
<li>alert 有确定按钮 / 错误信息</li>
<li>confirm 有确定和取消按钮 / 确认信息</li>
</ul>
<p> </p>
<h3>showWindow(k, url, mode, cache, menuv)</h3>
<ol start="1">
<li>k 浮窗的 key</li>
<li>url get 方式 url 表示浮窗请求的地址 post 方式 url 表示浮窗提交的表单 id</li>
<li>mode get 和 post 两种方式</li>
<li>cache 是否缓存浮窗 0:否 1:是(默认值)</li>
<li>menuv showMenu 参数调整,如不指定则使用 showWindow 默认值</li>
</ol>
<p>隐藏窗口可调用 hideWindow()</p>
<p> </p>
<h3>showTip(ctrlobj)</h3>
<ol start="1">
<li>ctrlobj 显示对象,对象放置于tip属性内,支持HTML标签</li>
</ol>
<p><strong>举个例子:</strong></p>
<ol start="1">
<li><span tip="我会显示出来<br/>还会换行" onmouseover="showTip(this)">鼠标移动到这里</span></li>
</ol>
<p> </p>
<h3>showPrompt(ctrlid, evt, msg, timeout)</h3>
<ol start="1">
<li>ctrlid 对象 id,可留空(null)</li>
<li>evt 响应函数的事件(同 showMenu),可留空(null)</li>
<li>msg 显示的内容</li>
<li>timeout 显示持续时间,单位:毫秒</li>
</ol>
<p>在指定 id 上显示信息。ctrlid 不留空时效果同 showTip,留空时为居中显示(积分增减提示)</p>
<p> </p>
页:
[1]