点击一行可以转到链接

时间:2016-02-24 15:11:39

标签: php phpbb3

我已经对它进行了一些CSS修改,现在我需要进行一次编程修改。我是一个C#家伙,所以这个PHP给我一个小小的曲线球。

以下是我要修改的部分:

if [ "$TRAVIS_PULL_REQUEST" == "false" ]; then
setup_git
commit_website_files
publish_gh_pages
fi

我想如果点击<li class="row"> <!-- EVENT forumlist_body_forum_row_prepend --> <dl class="icon {forumrow.FORUM_IMG_STYLE}"> <dt title="{forumrow.FORUM_FOLDER_IMG_ALT}"> <!-- IF forumrow.FORUM_IMAGE --><div class="forum-image">{forumrow.FORUM_IMAGE}</div><!-- ENDIF --> <a href="{forumrow.U_VIEWFORUM}" class="icon-link"></a> <!-- IF .forumrow.subforum and forumrow.S_LIST_SUBFORUMS --> <div class="dropdown-container dropdown-button-control"> <span title="{forumrow.L_SUBFORUM_STR}" class="dropdown-trigger"></span> <div class="dropdown hidden"> <div class="dropdown-contents"> <!-- EVENT forumlist_body_subforums_before --> <strong>{forumrow.L_SUBFORUM_STR}{L_COLON}</strong> <!-- BEGIN subforum --> <a href="{forumrow.subforum.U_SUBFORUM}" class="subforum<!-- IF forumrow.subforum.S_UNREAD --> unread<!-- ELSE --> read<!-- ENDIF -->" title="<!-- IF forumrow.subforum.UNREAD -->{L_UNREAD_POSTS}<!-- ELSE -->{L_NO_UNREAD_POSTS}<!-- ENDIF -->">{forumrow.subforum.SUBFORUM_NAME}</a> <!-- END subforum --> <!-- EVENT forumlist_body_subforums_after --> </div> </div> </div> <!-- ENDIF --> <div class="list-inner"> <a href="{forumrow.U_VIEWFORUM}" class="forumtitle">{forumrow.FORUM_NAME}</a> <span class="forum-description">{forumrow.FORUM_DESC}</span> <!-- IF forumrow.MODERATORS --> <!--<br /><span class="forum-moderators"><strong>{forumrow.L_MODERATOR_STR}{L_COLON}</strong> {forumrow.MODERATORS}</span>--> <!-- ENDIF --> </div> </dt> <!-- IF forumrow.CLICKS --> <dd class="redirect"><span>{L_REDIRECTS}{L_COLON} {forumrow.CLICKS}</span></dd> <!-- ELSEIF not forumrow.S_IS_LINK --> <dd class="forum-stats<!-- IF forumrow.S_UNREAD_FORUM --> unread<!-- ENDIF -->"><span> <!-- IF forumrow.LAST_POST_TIME -->(<dfn>{L_TOPICS}{L_COLON}</dfn> {forumrow.TOPICS} | <dfn>{L_POSTS}{L_COLON}</dfn>{forumrow.POSTS}) <!-- IF not S_IS_BOT --><a href="{forumrow.U_LAST_POST}" title="<!-- IF forumrow.S_UNREAD_FORUM -->{L_UNREAD_POSTS}<!-- ELSE -->{L_NO_UNREAD_POSTS}<!-- ENDIF -->">{LAST_POST_IMG}</a><!-- ENDIF --><!-- ELSE -->{L_NO_POSTS}<!-- ENDIF --> <!-- EVENT forumlist_body_last_post_title_prepend --> </span></dd> <dd class="mcp-status"><span> <!-- IF forumrow.U_UNAPPROVED_TOPICS --> <a href="{forumrow.U_UNAPPROVED_TOPICS}">{UNAPPROVED_IMG}</a> <!-- ELSEIF forumrow.U_UNAPPROVED_POSTS --> <a href="{forumrow.U_UNAPPROVED_POSTS}">{UNAPPROVED_POST_IMG}</a> <!-- ENDIF --> </span> </dd> <!-- ENDIF --> </dl> <!-- EVENT forumlist_body_forum_row_append --> </li> 将它带到论坛。现在,只有点击标题/标题才能进入论坛。

我相信这一行:

"row"

以下是默认模板的工作原理演示:

https://www.phpbb.com/customise/db/style/pbtech/demo/3.1 我在演示中唯一的区别是<a href="{forumrow.U_VIEWFORUM}" class="icon-link"></a> 现在更改为forum "blocks"而不是100% width。我喜欢它,所以如果你点击论坛“块/行”的任何地方它会带你到论坛。

1 个答案:

答案 0 :(得分:1)

使用PHP无法实现。可以通过前端的小型JavaScript代码段来实现。

<script type="text/javascript">
$(document).ready( function(){

    $("li.row").click( function(){
        var anchor = $(this).find("a:first");
        anchor.trigger("click"); // OR
        window.location = anchor.attr("href");
    });
});
</script>

这样做会为li.row上的任何点击附加一个事件处理程序。它会在其中找到链接并触发单击它,或使用其href属性更改浏览器窗口位置URL。

这需要一个名为jQuery的JavaScript库,它似乎已在您的演示模板上使用。上面的代码块需要包含在jQuery的<script> include标记之下。