首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将javascript添加到Question2Answer中特定帖子的第n段之后

将javascript添加到Question2Answer中特定帖子的第n段之后
EN

Stack Overflow用户
提问于 2018-04-13 00:34:29
回答 1查看 186关注 0票数 0

我在这个问题上挣扎了很长一段时间,但找不到任何解决方案。我有一个很长的博客类型的帖子,里面有很多段落,我已经在我的Question2Answer网站上添加了一个问题。我想把adsense代码放在第三段之后,但是如果不修改php代码就无法做到这一点。我阅读了Q2A文档,根据我的理解,我需要更改qa_view函数。这是在qa-heme.php中显示问题内容的原始代码:

代码语言:javascript
复制
public function q_view_content($q_view)
{
    $content = isset($q_view['content']) ? $q_view['content'] : '';

    $this->output('<div class="qa-q-view-content">');
    $this->output_raw($content);
    $this->output('</div>');
}

然而,我不知道如何在这里添加javascipt代码,并将其引用到特定的post id。我在考虑在特定段落后添加wrapper div,但我不知道如何实现,因为我对php非常陌生。任何帮助都将不胜感激。

EN

回答 1

Stack Overflow用户

发布于 2018-04-16 17:59:28

我不建议这样做,因为它会干扰阅读内容,影响用户的浏览体验。我建议你

  • 遵循StackOverflow风格,并在页面顶部或边上放置一个广告横幅
  • 或遵循Quora风格,您可以创建一个“查看更多”按钮,然后放置您的广告,以便在内容和广告之间有明确的分隔。

如果你坚持要问你第三个

问题的子级使用JS或JQuery,然后使用insertAfter,例如:

代码语言:javascript
复制
?>
var ADS = document.createElement( 'div' );
ADS.innerHtml = ' ... the Html content of your ADS banner' ;
var question = document.getElementById( 'question-id' );
var paragraphe = question.querySelectorAll('p')[2];  // third 
question.insertBefore( ADS , question.children(2).sibling );
// sibling is used to insert rather after the paragraph
<?php

这段代码将被测试并适应您的用例,然后附加到适当的php文件(可能在qa-include/qa-base.php的末尾),但要采取必要的预防措施,确保它不会干扰整体布局。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49801774

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档