我有一个简单的留言板,让我们说:mywebsite.com,允许用户发布他们的消息.目前,董事会使所有链接都可以点击,即.当有人发布以:
http://, https://, www., http://www., https://www.
Run Code Online (Sandbox Code Playgroud)
然后脚本自动将它们作为链接(即添加A href ..标签).
问题 - 垃圾邮件太多了.所以我的想法是自动删除上面的http | s/www,这样这些就不会成为"可点击的链接".但是,我想让海报链接到我网站中的页面,即.当消息包含mywebsite.com的链接时,不要删除http | s/www.
我的想法是创建两个数组:
$removeParts = array('http://', 'https://', 'www.', 'http://www.', 'https://www.');
$keepParts = array('http://mywebsite.com', 'http://www.mywebsite.com', 'www.mywebsite.com', 'http://mywebsite.com', 'https://www.mywebsite.com', 'https://mywebsite.com');
Run Code Online (Sandbox Code Playgroud)
但我不知道如何正确使用它们(可能str_replace可能会以某种方式工作).
以下是发布之前和发布之后的$ message示例:
$ message之前:
你好世界,感谢http:// mywebsite/about我学到了很多东西.我发现你有http://www.bing.com,https://google.com/search和一些www.spamwebsite.com/refid=spammer2.
$ message后:
你好世界,感谢http://mywebsite.com/about我学到了很多东西.我在bing.com,google.com/search和一些spamwebsite.com/refid=spammer2上找到了你.
请注意,用户在帖子表单中输入明文,因此脚本只能使用此明文(而不是href等).
我的目标是:检查title属性是否为空; 如果不是那么应该添加此title属性的值加上连字符.另一方面,如果title属性为空,则根本不应添加" - ".
这是我目前的CSS代码:
div:hover::before{content:attr(title):not(attr(title)="") " - ";}
Run Code Online (Sandbox Code Playgroud)
但它没有按预期工作.
例如:
<div title="My username">some text</div>
Run Code Online (Sandbox Code Playgroud)
应该在悬停时显示以下内容:
我的用户名 - 一些文字
但如果:
<div title="">some text</div>
Run Code Online (Sandbox Code Playgroud)
或(没有div的标题):
<div>some text</div>
Run Code Online (Sandbox Code Playgroud)
那么悬停时的显示应该是:
一些文字
有可能解决它吗?
现在,所有现代网络浏览器都提供“阅读器视图”模式。是否可以通过CSS和/或Javascript告诉浏览器在屏幕宽度最大为480px的移动设备上自动使用“阅读器视图”版本?
我只是不想创建该网站的移动版本,因为“阅读器视图”版本可以在移动设备(屏幕宽度为320px-480px)上完美运行。
PS。触发“阅读器视图”图标时,我不需要信息-我想在屏幕宽度小于480px的移动设备上强制使用“阅读器视图”模式。此外,Reader View模式也可以在其他浏览器中使用(不仅在Firefox中)。