本帖最后由 海梦缘 于 2010-01-28 22:58 编辑
最近逛论坛,老有人在要这个东西。我写了个不完美解决方法,之所以说是不完美,是因为这个方法不能狗完全实现程序调用。算是临时解决方法吧。很详细,基于SS7.5默认模板。
先看效果图:
1.建立一个新的投票。
2.进入投票页面。
3.右键》查看源代码,找到form表格,复制。
复制部分包含下图的全部代码,注意最后一个DIV。
将action="http://127.0.0.1/index.php?action-poll-php-1"
改为action="#action/poll/php/1#"
将onclick="javascript:viewpoll('viewpoll');"
改为onclick="window.open('#action-poll-pollid-1#');
4.打开index.html.php,找到- <!--{block name="poll" parameter="order/dateline DESC/limit/0,3/cachetime/80000/subjectlen/36/cachename/poll"}-->
- <div class="super_notice">
- <h3>调查:</h3>
- <ul>
- <!--{if empty($_SBLOCK['poll'])}-->
- <li>暂时没有调查</li>
- <!--{else}-->
- <!--{loop $_SBLOCK['poll'] $value}-->
- <li><a href="$value[url]" title="$value[subjectall]">$value[subject]</a></li>
- <!--{/loop}-->
- <!--{/if}-->
- </ul> </div><!--调查end-->
复制代码 将
<ul></ul>
替换为第三步复制的代码。
将<!--{block name="poll" parameter="order/dateline DESC/limit/0,3/cachetime/80000/subjectlen/36/cachename/poll"}-->
去掉。
把class="super_notice"改为class="indexpoll"
5.由于投票的位置高度增加,必然的公告的高度要降低,把公告的调用
<!--{block name="announcement" parameter="order/displayorder DESC,starttime DESC/limit/0,3/cachetime/96400/subjectlen/34/subjectdot/0/cachename/announce"}-->中的limit/0,3/
改为:limit/0,1/只调用一条公告
6.修改完之后的代码为- <div class="indexpoll">
- <h3>投票:</h3>
- <form id="pollform" action="#action/poll/php/1#" method="post">
- <div id="indexpoll">
- <ul>
- <li>你是男的还是女的?</li>
- <li>
- <input type="checkbox" id="votekey-0" name="votekey[]" value="0" class="votekey" />
- <label for="votekey-0">男</label></li>
- <li>
- <input type="checkbox" id="votekey-1" name="votekey[]" value="1" class="votekey" />
- <label for="votekey-1">女</label></li>
- <li>
- <input type="checkbox" id="votekey-2" name="votekey[]" value="2" class="votekey" />
- <label for="votekey-2">人妖</label></li>
- </ul>
- <div class="poll_op">
- <input type="hidden" name="pollid" value="1" />
- <input type="hidden" name="pollsubmit" value="yes" />
- <input class="input_search" id="dovote" name="pollbtn" type="submit" value="投票"/>
- <input class="input_search" type="button" value="查看" onclick="window.open('#action-poll-pollid-1#');"/>
- <input type="hidden" name="formhash" value="f946cccf" />
- </div>
- </form>
- </div>
- </div>
- <!--{block name="announcement" parameter="order/displayorder DESC,starttime DESC/limit/0,1/cachetime/96400/subjectlen/34/subjectdot/0/cachename/announce"}-->
- <div class="super_notice">
- <h3>公告:</h3>
- <ul>
- <!--{if empty($_SBLOCK['announce'])}-->
- <li>暂时没有公告</li>
- <!--{else}-->
- <!--{loop $_SBLOCK['announce'] $value}-->
- <li><a href="$value[url]" title="$value[subjectall]">$value[subject]</a></li>
- <!--{/loop}-->
- <!--{/if}-->
- </ul>
- </div><!--公告end-->
复制代码 7.开始修改CSS。
找到.super_notice
将height属性修改为50px;
增加CSS- /*indexpoll*/
- .indexpoll{ height:170px; border:1px solid #D8D8D8; background:#F7FDFD; margin-bottom:10px;}
- .indexpoll h3 { padding:8px 15px 4px; color:#EB1C26; }
- .indexpoll ul { padding:0 15px; }
- .indexpoll li { height:25px; overflow:hidden; line-height:25px; }
- .indexpoll .poll_op{ margin-top:10px;}
复制代码 注意:1.投票最多有三个选项,如过多个选项应继续修改CSS以及index.html.php
2.这个只是临时的解决方法,更好的方案请继续关注本帖子,尽量完善。
修改好的文件下载 |