百度熊掌号我真是服了, 一个账号只能绑定一个域名, 删了换也不行. 一个身份证只能有一个号, 所以总结下来一个人只能绑定一个域名.
百度的产品真是没有一个好用的, 没有一个
学习日志 LIUGUOFENG
百度熊掌号我真是服了, 一个账号只能绑定一个域名, 删了换也不行. 一个身份证只能有一个号, 所以总结下来一个人只能绑定一个域名.
百度的产品真是没有一个好用的, 没有一个
| 1 | All-in-One WP Migration |
Migration tool for all your blog data. Import or Export your blog content with a single click. |
|---|---|---|
| 2 | DX-auto-save-images |
Automatically keep the remote picture to the local, and automatically generate thumbnails. 自动保持远程图片到本地,并且自动生成缩略图。 |
| 3 | Netease Music |
WordPress 音乐播放器,支持网易云音乐和虾米音乐。 |
| 4 | Pretty Links |
Shrink, track and share any URL on the Internet from your WordPress website! |
| 5 | Really Simple SSL |
无需任何设定的轻量级插件来让你的网站有 SSL 证明 |
| 6 | SO Pinyin Slugs |
Transforms Chinese character titles (of Posts, Pages and all other content types that use slugs) into a permalink friendly slug, showing pinyin that can be read by humans and (Chinese) search engines alike. |
| 7 | WP Baidu Map |
A real Baidu map plugin. |
类似豆瓣 APP 动画闪烁效果

WXML:
<view class="text-loading">
<view class='pic-loading-line'></view>
<view class='text-loading-line-first'>
<view class='text-loading-line'></view>
<view class='text-loading-line'></view>
<view class='text-loading-line'></view>
</view>
<view class='text-loading-line-second'>
<view class='text-loading-line'></view>
<view class='text-loading-line'></view>
<view class='text-loading-line'></view>
</view>
</view>
WXSS:
.text-loading {
width: 90%;
margin:50rpx;
/* border:1rpx solid #ccc; */
}
.text-loading .pic-loading-line {
display: inline-block;
width: 130rpx;
height: 130rpx;
margin-right: 20rpx;
margin-bottom: 20rpx;
animation: pulse 1s infinite ease-in-out;
}
.text-loading .text-loading-line-first {
display: inline-block;
width: 70%;
height: 150rpx;
}
.text-loading .text-loading-line-second {
display: inline-block;
width: 100%;
height: 150rpx;
}
.text-loading-line {
height: 30rpx;
margin-bottom: 20rpx;
width: 100%;
animation: pulse 1s infinite ease-in-out;
}
.text-loading-line:nth-child(1) {
width: 100%;
}
.text-loading-line:nth-child(2) {
width: 90%;
}
.text-loading-line:nth-child(3) {
width: 50%;
}
@keyframes pulse {
0% {
background-color: rgba(165, 165, 165, 0.1);
}
50% {
background-color: rgba(165, 165, 165, 0.3);
}
100% {
background-color: rgba(165, 165, 165, 0.1);
}
}

单选按钮 Radio
wxss:
/* 重写 radio 样式 */
/* 未选中的 背景样式 */
radio .wx-radio-input{
border-radius: 50%;/* 圆角 */
width: 40rpx;
height: 40rpx;
}
/* 选中后的 背景样式 (红色背景 无边框 可根据UI需求自己修改) */
radio .wx-radio-input.wx-radio-input-checked{
border: none;
background: red;
}
/* 选中后的 对勾样式 (白色对勾 可根据UI需求自己修改) */
radio .wx-radio-input.wx-radio-input-checked::before{
border-radius: 50%;/* 圆角 */
width: 40rpx; /* 选中后对勾大小,不要超过背景的尺寸 */
height: 40rpx; /* 选中后对勾大小,不要超过背景的尺寸 */
line-height: 40rpx;
text-align: center;
font-size:30rpx; /* 对勾大小 30rpx */
color:#fff; /* 对勾颜色 白色 */
background: transparent;
transform:translate(-50%, -50%) scale(1);
-webkit-transform:translate(-50%, -50%) scale(1);
}
复选按钮 Checkbox
wxss:
/* 重写 checkbox 样式 */
/* 未选中的 背景样式 */
checkbox .wx-checkbox-input{
border-radius: 50%;/* 圆角 */
width: 40rpx; /* 背景的宽 */
height: 40rpx; /* 背景的高 */
}
/* 选中后的 背景样式 (红色背景 无边框 可根据UI需求自己修改) */
checkbox .wx-checkbox-input.wx-checkbox-input-checked{
border: none;
background: red;
}
/* 选中后的 对勾样式 (白色对勾 可根据UI需求自己修改) */
checkbox .wx-checkbox-input.wx-checkbox-input-checked::before{
border-radius: 50%;/* 圆角 */
width: 40rpx;/* 选中后对勾大小,不要超过背景的尺寸 */
height: 40rpx;/* 选中后对勾大小,不要超过背景的尺寸 */
line-height: 40rpx;
text-align: center;
font-size:30rpx; /* 对勾大小 30rpx */
color:#fff; /* 对勾颜色 白色 */
background: transparent;
transform:translate(-50%, -50%) scale(1);
-webkit-transform:translate(-50%, -50%) scale(1);
}
<?php
$data = array (
array (
'id' => 4,
'category_name' => '要闻',
'pid' => 3,
'created_at' => '2018-06-21 17:33:55',
'updated_at' => '2018-06-21 17:33:55',
),
array (
'id' => 3,
'category_name' => '新闻',
'pid' => 0,
'created_at' => '2018-06-21 17:33:45',
'updated_at' => '2018-06-21 17:33:45',
),
array (
'id' => 5,
'category_name' => '企业服务',
'pid' => 3,
'created_at' => '2018-06-21 17:34:12',
'updated_at' => '2018-06-21 17:34:12',
),
array (
'id' => 6,
'category_name' => '大新闻',
'pid' => 0,
'created_at' => '2018-06-26 14:41:28',
'updated_at' => '2018-06-26 14:41:28',
),
array (
'id' => 7,
'category_name' => '优惠',
'pid' => 6,
'created_at' => '2018-06-26 14:41:45',
'updated_at' => '2018-06-26 14:41:45',
),
);
echo "<pre>";
//var_export($data);
function getTree($list,$pid=0,$level=0) {
static $tree = array();
foreach($list as $row) {
if($row['parentID']==$pid) {
$row['level'] = $level;
$tree[] = $row;
getTree($list, $row['id'], $level + 1);
}
}
return $tree;
}
function makeTree($arr){
$refer = array();
$tree = array();
foreach($arr as $k => $v){
$refer[$v['id']] = & $arr[$k]; //创建主键的数组引用
}
foreach($arr as $k => $v){
$pid = $v['pid']; //获取当前分类的父级id
if($pid == 0){
$tree[] = & $arr[$k]; //顶级栏目
}else{
if(isset($refer[$pid])){
$refer[$pid]['subcat'][] = & $arr[$k]; //如果存在父级栏目,则添加进父级栏目的子栏目数组中
}
}
}
return $tree;
}
$a = makeTree($data);
print_r($a);
$b = getTree($data);
print_r($b);
输出:
Array
(
[0] => Array
(
[id] => 3
[category_name] => 新闻
[pid] => 0
[created_at] => 2018-06-21 17:33:45
[updated_at] => 2018-06-21 17:33:45
[subcat] => Array
(
[0] => Array
(
[id] => 4
[category_name] => 要闻
[pid] => 3
[created_at] => 2018-06-21 17:33:55
[updated_at] => 2018-06-21 17:33:55
)
[1] => Array
(
[id] => 5
[category_name] => 企业服务
[pid] => 3
[created_at] => 2018-06-21 17:34:12
[updated_at] => 2018-06-21 17:34:12
)
)
)
[1] => Array
(
[id] => 6
[category_name] => 大新闻
[pid] => 0
[created_at] => 2018-06-26 14:41:28
[updated_at] => 2018-06-26 14:41:28
[subcat] => Array
(
[0] => Array
(
[id] => 7
[category_name] => 优惠
[pid] => 6
[created_at] => 2018-06-26 14:41:45
[updated_at] => 2018-06-26 14:41:45
)
)
)
)
Array
(
[0] => Array
(
[id] => 4
[category_name] => 要闻
[pid] => 3
[created_at] => 2018-06-21 17:33:55
[updated_at] => 2018-06-21 17:33:55
[level] => 0
)
[1] => Array
(
[id] => 3
[category_name] => 新闻
[pid] => 0
[created_at] => 2018-06-21 17:33:45
[updated_at] => 2018-06-21 17:33:45
[level] => 0
)
[2] => Array
(
[id] => 5
[category_name] => 企业服务
[pid] => 3
[created_at] => 2018-06-21 17:34:12
[updated_at] => 2018-06-21 17:34:12
[level] => 0
)
[3] => Array
(
[id] => 6
[category_name] => 大新闻
[pid] => 0
[created_at] => 2018-06-26 14:41:28
[updated_at] => 2018-06-26 14:41:28
[level] => 0
)
[4] => Array
(
[id] => 7
[category_name] => 优惠
[pid] => 6
[created_at] => 2018-06-26 14:41:45
[updated_at] => 2018-06-26 14:41:45
[level] => 0
)
)
微信小程序使用 百度地图提供的坐标进行定位的时候会造成位置偏移,究其原因是百度地图未使用常规的国测局坐标(火星坐标,GCJ02)、或WGS84坐标系 而使用了自己的坐标系 百度坐标系
会造成经纬度上的一公里左右的偏移。
但百度只提供 WGS84、GCJ02 坐标系转百度坐标系的接口,而未提供百度坐标系转 WGS84、GCJ02坐标系
互联网在线地图使用的坐标系:
火星坐标系:
百度坐标系:
WGS84坐标系:
微信小程序使用百度坐标系经纬度的解决方式:
腾讯位置服务提供了 微信小程序 JavaScript SDK,可进行其他坐标系的逆向解析,包含以下坐标系转换至腾讯坐标系:
接口文档: http://lbs.qq.com/qqmap_wx_jssdk/method-reverseGeocoder.html
public function log($res){
$err_date = date("Ym", time());
$address = '/error';
if (!is_dir($address)) {
mkdir($address, 0700, true);
}
$address = $address.'/'.$err_date . '_error.log';
$error_date = date("Y-m-d H:i:s", time());
if(!empty($_SERVER['HTTP_REFERER'])) {
$file = $_SERVER['HTTP_REFERER'];
} else {
$file = $_SERVER['REQUEST_URI'];
}
if(is_array($res)) {
$res_real = "$error_date\t$file\n";
error_log($res_real, 3, $address);
$res = var_export($res,true);
$res = $res."\n";
error_log($res, 3, $address);
} else {
$res_real = "$error_date\t$file\t$res\n";
error_log($res_real, 3, $address);
}
}
dateAdd:function (startDate,days) {
startDate = new Date(startDate);
startDate = +startDate + days * 1000 * 60 * 60 * 24;
startDate = new Date(startDate);
var nextStartDate = startDate.getFullYear() + "-" + (startDate.getMonth() + 1) + "-" + startDate.getDate();
return nextStartDate;
},
// 时间比较函数
compareDate:function (startDate, endDate) {
var arrStart = startDate.split("-");
var startTime = new Date(arrStart[0], arrStart[1], arrStart[2]);
var startTimes = startTime.getTime();
var arrEnd = endDate.split("-");
var endTime = new Date(arrEnd[0], arrEnd[1], arrEnd[2]);
var endTimes = endTime.getTime();
if(endTimes<startTimes) {
return false;
}
return true;
},

js
let animationShowHeight = 300;
Page({
/**
* 页面的初始数据
*/
data: {
animation: ''
},
// 下来
btnClick: function () {
var animation = wx.createAnimation({
transformOrigin: "50% 50%",
duration: 1000,
timingFunction: "ease",
delay: 0
})
this.animation = animation
animation.translateY(animationShowHeight).step()
this.setData({
animation: animation.export(),
})
},
// 上去
btnClickTo: function () {
var animation = wx.createAnimation({
transformOrigin: "50% 50%",
duration: 1000,
timingFunction: "ease",
delay: 0
})
this.animation = animation
animation.translateY(0).step()
this.setData({
animation: animation.export(),
})
}
})
wxml
<button type="primary" bindtap="btnClick"> 点我下去 </button>
<button type="primary" bindtap="btnClickTo"> 点我回去 </button>
<view class="body-view" animation="{{animation}}">
<view>我一会就出来吓死你</view>
<view>我一会就出来吓死你</view>
<view>我一会就出来吓死你</view>
</view>