jq图片连续滚动代码jQuery-jcMarquee.js

本代码支持同页面多个滚动效果.

需引入jquery-1.7.2.min.js

jQuery-jcMarquee.js代码

;(function($){
$.fn.jcMarquee = function(options) {
var defaults = {
'marquee':'x',
'margin_bottom':'0',
'margin_right':'0',
'speed':'10'
};
var options = $.extend(defaults,options);
return this.each(function() {
var $marquee = $(this),
$marquee_scroll = $marquee.children('ul');
$marquee_scroll.append("<li class='clone'>"+"</li>");
$marquee_scroll.find('li').eq(0).children().clone().appendTo('.clone');
var $marquee_left = $marquee_scroll.find('li');
if (options.marquee == 'x') {
var x = 0;
$marquee_scroll.css('width','1000%');
$marquee_left.find('div').css({'margin-right':options.margin_right});
$marquee_left.css({'margin-right':options.margin_right});
function Marquee_x(){
$marquee.scrollLeft(++x);
_margin = parseInt($marquee_left.find('div').css('margin-right'));
if(x==$marquee_left.width()+_margin) { x = 0 };
};
var MyMar=setInterval(Marquee_x,options.speed);
$marquee.hover(function(){
clearInterval(MyMar);
},function(){
MyMar=setInterval(Marquee_x,options.speed);
});
}
if (options.marquee == 'y') {
var y = 0;
$marquee_scroll.css('height','1000%');
$marquee_left.find('div').css('margin-bottom',options.margin_bottom);
$marquee_left.css('margin-bottom',options.margin_bottom);
function Marquee_y(){
$marquee.scrollTop(++y);
_margin = parseInt($marquee_left.find('div').css('margin-bottom'));
if(y==$marquee_left.height()+_margin) { y = 0 };
};
var MyMar=setInterval(Marquee_y,options.speed);
$marquee.hover(function(){
clearInterval(MyMar);
},function(){
MyMar=setInterval(Marquee_y,options.speed);
});
};
});
};
})(jQuery)

使用方法:

* 相关参数

'marquee':'x', 设置滚动方向,提供 marquee:x 或 marquee:y

'margin_bottom':'0', 设置margin_bottom值

'margin_right':'0', 设置margin_right值

'speed':'10' 设置滚动速度,单位mm

* 重要提醒

#Marquee_x ul li, #Marquee_x ul li div { float:left;} // 横向滚动时必须让所有li左浮动

* HTML结构

<div id="Marquee">

<ul>

<li>

<div><img height="50" width="100" alt="图片1" /></div>

<div><img height="50" width="100" alt="图片2" /></div>

<div><img height="50" width="100" alt="图片3" /></div>

<div><img height="50" width="100" alt="图片4" /></div>

</li>

</ul>

</div>

添加js代码

<script>

$(function(){

$('#Marquee').jcMarquee({ 'marquee':'x','margin_right':'10px','speed':3 });

$('#Marquee_x').jcMarquee({ 'marquee':'x','margin_right':'10px','speed':3 });
});

</script>

解决ecshop后台频繁退出问题

ecshop后台有时候会自动登出,而且还会很频繁,频繁的自动登出就严重的影响到了后台使用。

首先我们可以通过 在后台登录时勾选保存登录来解决.

如果以上方法不能解决,可以尝试通过修改代码来解决.

打开/includes/lib_base.php

找到function real_ip()函数

修改成以下代码

function real_ip()
{
static $realip = NULL;

if ($realip !== NULL)
{
return $realip;
}

/*添加*/
if(isset($_COOKIE['real_ipd']) &amp;&amp; !empty($_COOKIE['real_ipd'])){
$realip = $_COOKIE['real_ipd'];
return $realip;
}
/*添加*/

if (isset($_SERVER))
{
if (isset($_SERVER['HTTP_X_FORWARDED_FOR']))
{
$arr = explode(',', $_SERVER['HTTP_X_FORWARDED_FOR']);

/* 取X-Forwarded-For中第一个非unknown的有效IP字符串 */
foreach ($arr AS $ip)
{
$ip = trim($ip);

if ($ip != 'unknown')
{
$realip = $ip;

break;
}
}
}
elseif (isset($_SERVER['HTTP_CLIENT_IP']))
{
$realip = $_SERVER['HTTP_CLIENT_IP'];
}
else
{
if (isset($_SERVER['REMOTE_ADDR']))
{
$realip = $_SERVER['REMOTE_ADDR'];
}
else
{
$realip = '0.0.0.0';
/*添加*/ setcookie(&quot;real_ipd&quot;, $realip, time()+36000, &quot;/&quot;); /*添加*/
}
}
}
else
{
if (getenv('HTTP_X_FORWARDED_FOR'))
{
$realip = getenv('HTTP_X_FORWARDED_FOR');
}
elseif (getenv('HTTP_CLIENT_IP'))
{
$realip = getenv('HTTP_CLIENT_IP');
}
else
{
$realip = getenv('REMOTE_ADDR');
}
}

preg_match(&quot;/[d.]{7,15}/&quot;, $realip, $onlineip);
$realip = !empty($onlineip[0]) ? $onlineip[0] : '0.0.0.0';

return $realip;
}

可以直接用上面的代码覆盖,记得提前备份.

手机站常用meta参数设置

手机站常用meta参数

<!-- 页面自适应 -->
<meta name="viewport" content="initial-scale=1, maximum-scale=1, minimum-scale=1, user-scalable=no">
<!-- 不让百度转码 -->
<meta http-equiv="Cache-Control" content="no-siteapp"/>
<!-- uc强制竖屏 -->
<meta name="screen-orientation" content="portrait">
<!-- QQ强制竖屏 -->
<meta name="x5-orientation" content="portrait">
<!-- UC强制全屏 -->
<meta name="full-screen" content="yes">
<!-- QQ强制全屏 -->
<meta name="x5-fullscreen" content="true">
<!-- UC应用模式 -->
<meta name="browsermode" content="application">
<!-- QQ应用模式 -->
<meta name="x5-page-mode" content="app">

清空dz论坛所有帖子方法

清空dz论坛所有帖子的方法,通过清两张数据库表:pre_forum_post和pre_forum_thread的方法实现。

 

删除帖子的步骤,就是清空数据库里面的两张数据库表:pre_forum_post和pre_forum_thread。
pre_forum_post是帖子;
pre_forum_thread是主题;

pre_ 前缀根据你网站的情况确定,这个是默认的。

下面是具体步骤:

1.打开数据库,在phpMyAdmin中选择对应的表打开,然后选择操作

清空dz论坛所有帖子的方法

 

2.在最下方有删除数据或数据表操作面板,我们点击清空数据表即可。

清空dz论坛所有帖子的方法

3.最后再进行数据表优化,即可。

清空dz论坛所有帖子的方法

使用以上步骤对数据库表:pre_forum_post和pre_forum_thread进行操作,即可实现清空dz论坛所有帖子。

4.最后还要对缓存和论坛统计进行更新操作,以及对主题前台部分调用模块数据进行更新操作。

这样,论坛数据才是真正意义上的清空。

Discuz管理员密码重置方法

本文是通过修改DZ中UC创始人密码的方法,间接修改DZ管理员密码的,方法操作简单,只需ftp下载文件修改即可。

先改UC创始人的密码
修改UC配置文件 /uc_server/data/config.inc.php
对应两行换掉

define('UC_FOUNDERPW', '636822edaa353665147896b9061edc4b');
define('UC_FOUNDERSALT', 'p5j8K5');

密码为 123654

替换完成后访问UC目录,默认为/uc_server
进入后即可修改管理员密码了!

请注意是修改DZ管理员密码,而不是修改DZ创始人密码,当然创始人密码也是要修改的,为了安全!

js错误Uncaught TypeError: XXX is not a function解决方法及原因

起因:

在对select进行onchange操作时,无法执行函数,一直报错:Uncaught ReferenceError: XXX is not defined at HTMLSelectElement.onchange

经过排查,发现并无错误。

因为之前一直是正常使用的,突然不行,考虑是不是兼容问题。

通过多方查找,最后锁定原因

form 表单中方法的名称与 id 或者 name 重复导致

通过修改一下函数名或者id名解决本例错误。

参考阅读:

https://blog.csdn.net/shaotaiban1097/article/details/102857577

https://blog.csdn.net/u011870547/article/details/52765811

 

linux系统中使用certbot实现自动申请ssl证书

安装certbot客户端
[*****]wget https://dl.eff.org/certbot-auto
[*****]chmod a+x certbot-auto

生成证书
[*****]./certbot-auto certonly --email 123456@qq.com --agree-tos --webroot -w /var/www/html/ -d aaa.com -d www.aaa.com
证书地址 /etc/letsencrypt/live/aaa.com/
fullchain.pem privkey.pem

证书续签
[*****]./certbot-auto renew

nginx + frp 反向代理出现 502 Bad Gateway 错误

其实是nginx反向代理问题

现象:

frp服务器正常

frp客户机正常

两者nginx都正常,经过简单重启无效。

无法解决问题。

frp客户机上通过frp后的网站使用域名访问一直出现 502 Bad Gateway 错误。

但在frp客户机上通过本地ip可以正常访问。

 

通过网站查询获取解决方法

原因:nginx缓冲区太小问题,无法正常进行反代理。

只需要修改client_header_buffer_size和client_body_buffer_size的大小即可。

我是用的宝塔面板,在nginx的管理中修改以上两个配置即可。

 

扩展阅读:

https://www.cnblogs.com/jkko123/p/6294585.html

https://www.cnblogs.com/jpfss/p/10244608.html

PicGo图床客户端

PicGo是一款开源的图片上传和管理软件,默认支持上传图片到微博图床、七牛图床、腾讯云COS、又拍云、GitHub、SM.MS、阿里云OSS、Imgur等平台。方便不同图床的上传需求。2.0版本开始更可以自己开发插件实现其他图床的上传需求。

适用于多种场景需求:

编辑:可以存储图片素材,文章插图等。

设计师:可以存储图片作品,图片素材等

站长:可以作为图床使用

相册管理者(影楼,家长,摄影爱好者):可上传保存管理图片。

 

PicGo上传之后,会自动将上传成功的URL复制到你的剪贴板,支持5种复制格式。

 

支持多个图片存储云,方便存储。

 

支持管理,方便查找使用。

 

提示:如果搜索插件无显示,建议使用代理。win可以使用全局代理解决。国外IP即可。

安装插件需node.js环境,请下载安装node.js 。

安装路径不能含中文和空格等特殊字符,否则会有权限问题.

 

 

官网:

https://molunerfinn.com/PicGo/

https://github.com/Molunerfinn/picgo/

 

网盘下载:

win客户端 PicGo-Setup-2.2.1.exe  https://72k.us/file/16922972-418672132 

mac客户端 PicGo-2.2.1.dmg   https://72k.us/file/16922972-418671946

linux客户端 PicGo-2.2.1.AppImage  https://72k.us/file/16922972-418671748

说明:网盘中的文件下载自https://github.com/Molunerfinn/picgo/releases,如果你那里下载速度可以,直接从这里下载即可。

国内下载github文件很慢。

 

推荐几个常用扩展插件:

web-uploader:PHP版图床PicUploader专用插件
nextcloud-uploader:开源网盘nextcloud专用插件
autocopy:上传图片后自动复制网址到剪贴板
smms-user:用于SM.MS的注册用
super-prefix:用于自定义图像文件名和前缀
watermark:PicGo的水印插件

微软全新Chromium版Edge浏览器正式版发布

IT之家1月16日消息 早在2018年12月,微软宣布打算基于Chromium开源项目开发新版本的Edge浏览器。微软的目标是为客户创造更好的Web兼容性,并为Web开发人员减少Web的碎片化。在测试了新的Edge浏览器一年多之后,微软今天正式宣布了适用于Windows和macOS的Microsoft Edge浏览器的全面上市。

 

你可以从Microsoft Edge网站以90多种语言下载适用于Windows的Microsoft Edge浏览器的“稳定”正式版(Microsoft Edge 79稳定版)。另外也同步支持Windows 8.1/8、Windows 7、macOS、iOS和安卓系统。

 

 

如果你不想手动安装Microsoft Edge浏览器,也可以等待它通过将来对Windows 10的更新自动安装。微软将在接下来的几个月中向所有Windows 10用户推出稳定新Edge版本。迁移过程将从接下来的几周开始。

 

 

新型Edge浏览器的亮点:

现在,Microsoft Edge在所有设备上都可用,并且会自动同步你的密码,收藏夹和设置。

Microsoft Edge和Bing为你提供了在线保护隐私的工具。

借助收藏夹等全新功能以及网络上最全面的内置学习和可访问性工具集,新的Microsoft Edge旨在帮助你完成工作。

使用新的Microsoft Edge&Bing,你可以仅通过搜索获得奖励。

借助Internet Explorer模式,企业级安全性和Bing中的Microsoft Search,新的Microsoft Edge是你组织所需的唯一浏览器。

 

网盘下载:(MicrosoftEdgeSetup_win7_cn.exe)

https://72k.us/file/16922972-418508717

 

其它版本请在官方下载

https://www.microsoft.com/en-us/edge

 

来源:IT之家