<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[AndyQsmart的专栏]]></title><description><![CDATA[AndyQsmart个人博客]]></description><link>https://blog.youkuaiyun.com/AndyQsmart</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; AndyQsmart]]></copyright><item><title><![CDATA[小程序富文本Editor插入图片、超链接、公式等的一次尝试]]></title><link>https://blog.youkuaiyun.com/AndyQsmart/article/details/149165446</link><guid>https://blog.youkuaiyun.com/AndyQsmart/article/details/149165446</guid><author>AndyQsmart</author><pubDate>Mon, 07 Jul 2025 09:08:26 +0800</pubDate><description><![CDATA[本文介绍了在小程序编辑器中使用图片替代复杂元素（如超链接、公式、视频等）的实现方案。通过EditorContext.insertImage接口插入SVG图片，利用data字段存储元素类型和属性数据。具体实现包括：1）使用Mathjax生成公式SVG或手动创建其他元素的SVG；2）通过base64编码的data-custom属性区分元素类型；3）利用EditorContext.getBounds实现点击事件定位；4）通过预生成CSS类解决样式限制问题。该方案在小程序编辑器功能受限的情况下，提供了一种灵活的内容]]></description><category></category></item><item><title><![CDATA[Qt开发之MaterialUI-QML库]]></title><link>https://blog.youkuaiyun.com/AndyQsmart/article/details/131250523</link><guid>https://blog.youkuaiyun.com/AndyQsmart/article/details/131250523</guid><author>AndyQsmart</author><pubDate>Fri, 16 Jun 2023 17:36:33 +0800</pubDate><description><![CDATA[PC端使用Qt QML开发，写法相差很大，思路也有所区别，写法也比较受限，不过现在一些基础组件基本上已经实现，提交到了Github，项目直接运行就是一个文档程序，介绍了组件的Demo和API，还在完善中。使用的话，就是直接使用common_component下的MaterialUI文件夹即可，里面的组件基本上已经涵盖了一下基础组件。之前一直都是使用MaterialUI开发Web的页面，是一套基于React开发的组件库，使用起来挺方便的。Qt版本是Qt5的。，因为开发的比较早，所以使用的是V4版本的。]]></description><category></category></item><item><title><![CDATA[Ajax跨域请求的两种实现方式]]></title><link>https://blog.youkuaiyun.com/AndyQsmart/article/details/125442914</link><guid>https://blog.youkuaiyun.com/AndyQsmart/article/details/125442914</guid><author>AndyQsmart</author><pubDate>Fri, 24 Jun 2022 12:00:38 +0800</pubDate><description><![CDATA[最近网站新增了一个域名B用于分离不同的功能。但是需要复用服务器的高防等服务，但是服务和原有域名A绑定，所以新域名B需要直接去调用域名A。一开始想使用CNAME的方式，让B直接指向A。但是Https支持性有点问题，需要多域名证书。也考虑过反向代理，但是代理服务器的性能和高防等又是一个问题。最终决定在域名B的网页中，所有请求都直接去调用域名A的接口。于是就遇到了跨域请求的问题。网上找了许多资料来实现跨域请求。最终预估下来，有两种方案比较靠谱：通过iframe实现和CORS方案初步设想是加载一个域名A的ifram]]></description><category></category></item><item><title><![CDATA[真实故事 - 10年前的誓言还有效吗]]></title><link>https://blog.youkuaiyun.com/AndyQsmart/article/details/123371028</link><guid>https://blog.youkuaiyun.com/AndyQsmart/article/details/123371028</guid><author>AndyQsmart</author><pubDate>Wed, 09 Mar 2022 10:35:17 +0800</pubDate><description><![CDATA[这是一个发生在10年前的故事，很想知道当时的这位大哥是否还在坚守自己的诺言。


更多文章请关注公众号：打工人看世界。

公众号原文链接：真实故事 - 10年前的誓言还有效吗








故事的原委

事情是这样的，大概在10年前，我还只是个高中生的时候。当时的搜搜还不叫搜狗，搜搜还是腾讯的。搜搜里面有一个问答模块，也就是现在的搜狗问问。

当时闲着无聊的我，就喜欢在问问里面回答问题，什么情感问题、学习问题、找歌问题等等。但是高中结束后，就再也没有打开过问问。直到最近，我偶然发现，搜狗问问下面，还能..]]></description><category></category></item><item><title><![CDATA[小故事-太阳和月亮]]></title><link>https://blog.youkuaiyun.com/AndyQsmart/article/details/123281174</link><guid>https://blog.youkuaiyun.com/AndyQsmart/article/details/123281174</guid><author>AndyQsmart</author><pubDate>Fri, 04 Mar 2022 17:13:38 +0800</pubDate><description><![CDATA[更多文章请关注公众号：程序员中的故事大王。

公众号原文链接：小故事-太阳和月亮



小故事：月亮知道自己不会发光，它的光芒都来自于太阳。每次清晨和黄昏，月亮都会和太阳进行交接。终于有一天交接的时候，月亮沮丧地问太阳：“是不是只要有你就够了，我只是一个可有可无的存在。”太阳意味深长地说道：“我只是在光明中，比较亮的那一个罢了。而你是黑暗中唯一的那一个光明。”



解答：这个故事比较好理解，太阳的话基本上已经表达了大部分的意义。从表面上看来，月亮是依赖太阳才能发光发亮，属于活在了太阳的光芒下。但是更深层次]]></description><category></category></item><item><title><![CDATA[小故事-小海龟]]></title><link>https://blog.youkuaiyun.com/AndyQsmart/article/details/123225550</link><guid>https://blog.youkuaiyun.com/AndyQsmart/article/details/123225550</guid><author>AndyQsmart</author><pubDate>Wed, 02 Mar 2022 11:11:15 +0800</pubDate><description><![CDATA[详细文章请关注公众号：程序员中的故事大王。

公众号原文链接：小故事-小海龟





小故事：小海龟自由自在，它每天都会游到各种各样的地方去探索。有一天，它在海滩上遇到了一个老渔夫。从此以后，他们每天都一起出海，一起在沙滩晒太阳。漫长的日子过得很短暂，突然有一天，小海龟在海滩上没有等到渔夫的到来。它等了好几个白天、好几个夜晚，渔夫始终没有现身。之后的无数个白天和夜晚，海龟都静静地在海滩上，似乎是在等待着什么，又似乎是在思考着什么。



解答：小海龟好比人，一开始可能都是习惯独自一人，而且能在孤独中寻找.]]></description><category></category></item><item><title><![CDATA[小故事-小画家]]></title><link>https://blog.youkuaiyun.com/AndyQsmart/article/details/123225477</link><guid>https://blog.youkuaiyun.com/AndyQsmart/article/details/123225477</guid><author>AndyQsmart</author><pubDate>Wed, 02 Mar 2022 11:09:46 +0800</pubDate><description><![CDATA[详细文章请关注公众号：程序员中的故事大王。

公众号原文链接：小故事解答-小画家





小故事：这是一个小画家，在他的时代，富豪们告诉画家们需要画什么，画家们都画着一样的画，每天如此。但是小画家感觉不应该这样，他开始画自己想画的事物。画家们都嘲笑他，果然，他的画都卖不出去了。终于，这一天，小画家也怀疑自己是错的了，他准备放弃自己愚蠢的想法。就在这时，一个富豪买走了他所有的画。从此以后画家们开始学习画小画家的画。



解答：初始想法是画家=打工人，富豪=资本家。但是后面发现可以扩展为富豪其实是规则制定者]]></description><category></category></item><item><title><![CDATA[小故事-小男孩和瓶子]]></title><link>https://blog.youkuaiyun.com/AndyQsmart/article/details/123225343</link><guid>https://blog.youkuaiyun.com/AndyQsmart/article/details/123225343</guid><author>AndyQsmart</author><pubDate>Wed, 02 Mar 2022 11:06:49 +0800</pubDate><description><![CDATA[详细文章请关注公众号：程序员中的故事大王。

公众号原文链接：小故事-小海龟



小故事：有一天，小男孩终于下定决心，用珍藏好久的瓶子去打水。他满怀着紧张和期待，小心翼翼地打了满满一瓶的水。悲剧发生了，瓶子连同水一起摔在了地上，碎得一片一片。小男孩很伤心，哭了很久。大人给了小男孩一个一模一样的瓶子，一切似乎回到了平静。小男孩很快速地打了大半瓶水，他学会了用瓶子打水。



解答：瓶子=真心，水=爱情。需要注意的是虽然强调了一模一样的瓶子，但是其实可能不再是第一次的瓶子了。而且第一次是小心翼翼打了满满一瓶的]]></description><category></category></item><item><title><![CDATA[JS在浏览器中base64、url、blob互相转换]]></title><link>https://blog.youkuaiyun.com/AndyQsmart/article/details/103067642</link><guid>https://blog.youkuaiyun.com/AndyQsmart/article/details/103067642</guid><author>AndyQsmart</author><pubDate>Fri, 15 Nov 2019 10:40:43 +0800</pubDate><description><![CDATA[公众号：程序员波波



在平时开发的时候，我们在处理文件，尤其是图片的时候，经常会跟base64、url、blob(file)这三种形式的内容打交道。

base64格式一般都是以data:image/jpeg;base64,这种类似形式打头的一串很长的字符串。

url一般以服务器地址或者路径（形如http://xxx.jpg或者/static/xxx.jpg）为主，也会有浏览器本地地址（形如...]]></description><category></category></item><item><title><![CDATA[[波波带你手动提取网页视频]07讲 实战Network巧妙提取m3u8链接]]></title><link>https://blog.youkuaiyun.com/AndyQsmart/article/details/102975108</link><guid>https://blog.youkuaiyun.com/AndyQsmart/article/details/102975108</guid><author>AndyQsmart</author><pubDate>Fri, 15 Nov 2019 10:34:19 +0800</pubDate><description><![CDATA[公众号：程序员波波



小时候很喜欢看《龙珠》这部动漫，今天我们来重温一下吧。

百度搜索“龙珠”

点开这个雅图在线的



可以看到这个网站做的很乱，我随便点开了一集播放。



打开控制台，可以看到这个网站做了特殊处理，我只要打开控制台，视频就会停止播放。Network中勉强能看到一些ts结尾的，无法看到更多信息。



我使用左上角的定位功能，定位了视频的元素。看到了video标签，但...]]></description><category></category></item><item><title><![CDATA[[波波带你手动提取网页视频]06讲 实战Network提取m3u8文件]]></title><link>https://blog.youkuaiyun.com/AndyQsmart/article/details/102970638</link><guid>https://blog.youkuaiyun.com/AndyQsmart/article/details/102970638</guid><author>AndyQsmart</author><pubDate>Fri, 15 Nov 2019 10:30:27 +0800</pubDate><description><![CDATA[公众号：程序员波波



这一次我们来致敬星爷的《大话西游》，今天遇到一个比较棘手的。

百度搜索“大话西游”:



我打开这个1905VIP影院

如下图，和往期一样，打开控制台，并让视频播放。可以看到Network中有许多和ts相关的信息，本次的视频链接为m3u8格式的。



如下图，这次发现Elements里面完全没有和m3u8相关的节点，param中也只有一些杂乱的信息。



如...]]></description><category></category></item><item><title><![CDATA[[波波带你手动提取网页视频]05讲 实战Network提取m3u8链接]]></title><link>https://blog.youkuaiyun.com/AndyQsmart/article/details/102960042</link><guid>https://blog.youkuaiyun.com/AndyQsmart/article/details/102960042</guid><author>AndyQsmart</author><pubDate>Wed, 13 Nov 2019 10:34:00 +0800</pubDate><description><![CDATA[公众号：程序员波波



前一篇文章我们已经接触到了m3u8视频的链接，这个一般就是需要自己去想办法找到这个链接，这个链接一般隐藏比较深，当然也有比较明显了，比如这一次的实践。

最近我看了一部比较老的电视剧《相爱十年》，我就以他为例。

百度搜索“相爱十年”：



我打开了这个西瓜视频的链接，并播放了其中的一集：



和往期文章相同的处理方式，打开控制台的Network，让视频开始播放，不...]]></description><category></category></item><item><title><![CDATA[JS扩展运算符巧用]]></title><link>https://blog.youkuaiyun.com/AndyQsmart/article/details/102957899</link><guid>https://blog.youkuaiyun.com/AndyQsmart/article/details/102957899</guid><author>AndyQsmart</author><pubDate>Tue, 12 Nov 2019 10:01:59 +0800</pubDate><description><![CDATA[公众号：程序员波波



JavaScript中es6里面有一个扩展运算符...感觉十分方便。和Python中的*、**有点类型。

...的作用是展开一个对象或者数组中的数据，比如：


let a = [1, 2, 3]
let b = [2, ...a, 4] // b = [2, 1, 2, 3, 4]

sum(...a) &lt;=&gt; sum(1, 2, 3)

let x = ...]]></description><category></category></item><item><title><![CDATA[[React组件封装][优化]文件选择按钮(解决安卓下type为file的input标签不触发onChange的问题)]]></title><link>https://blog.youkuaiyun.com/AndyQsmart/article/details/102957403</link><guid>https://blog.youkuaiyun.com/AndyQsmart/article/details/102957403</guid><author>AndyQsmart</author><pubDate>Tue, 12 Nov 2019 09:56:05 +0800</pubDate><description><![CDATA[公众号：程序员波波



之前已经写过“[React组件封装][实例]文件选择按钮组件封装”这篇文章。目的是封装一个文件选择按钮。

但是在真正运用的时候发现，还是存在问题的。主要是安卓端的微信浏览器input标签不触发onChange函数。

在经过一些查阅后，发现可能原因是安卓端的WebView不支持input标签为file，不会触发onChange，而微信安卓端使用了WebView，所以会有...]]></description><category></category></item><item><title><![CDATA[[波波带你手动提取网页视频]04讲 实战Network配合Elements提取m3u8链接]]></title><link>https://blog.youkuaiyun.com/AndyQsmart/article/details/102959454</link><guid>https://blog.youkuaiyun.com/AndyQsmart/article/details/102959454</guid><author>AndyQsmart</author><pubDate>Tue, 12 Nov 2019 09:36:06 +0800</pubDate><description><![CDATA[公众号：程序员波波



前两篇文章我们已经初步熟悉了Elements和Network这两个控制台中的工具。接下来我们就会遇到需要这两者配合的情况。

我依然搜索“鬼灭之刃”



我打开了这个看撒动漫，并打开了其中的一集。

如下图，我打开控制台的Network，如果列表中没有数据，请在打开Network的前提下刷新网页。然后让左侧视频播放，如果不能够点击，请暂时关闭控制台，让视频播放，然后打...]]></description><category></category></item><item><title><![CDATA[[波波带你手动提取网页视频]03讲 实战Network中mp4 提取]]></title><link>https://blog.youkuaiyun.com/AndyQsmart/article/details/102959065</link><guid>https://blog.youkuaiyun.com/AndyQsmart/article/details/102959065</guid><author>AndyQsmart</author><pubDate>Mon, 11 Nov 2019 09:31:28 +0800</pubDate><description><![CDATA[公众号：程序员波波



上一篇文章中已经讲了video标签去提取mp4链接。

但是经常我们可能一时间无法定位到这个video标签，或者video标签隐藏比较深，需要经过特殊处理才能定位到。（特殊处理包括，隐藏一些无用元素，或者Elements下面直接手动去查找video标签）

这个时候另一个工具Network就登场了。

首先我还是百度“鬼灭之刃”：



然后我点击这个动画岛的，并打开第1...]]></description><category></category></item><item><title><![CDATA[[波波带你手动提取网页视频]02讲 实战video标签mp4 提取]]></title><link>https://blog.youkuaiyun.com/AndyQsmart/article/details/102958750</link><guid>https://blog.youkuaiyun.com/AndyQsmart/article/details/102958750</guid><author>AndyQsmart</author><pubDate>Fri, 08 Nov 2019 17:29:00 +0800</pubDate><description><![CDATA[公众号：程序员波波



最近《鬼灭之刃》这部动漫比较火，我们就以他为例吧。

首先搜索“鬼灭之刃”。

我随便点击了这个鬼灭之刃中文网的，如下图：



如下图，网站有许多集。



然后，我打开了第06集，并打开控制台，如下图。



点击控制台左上角的箭头标志，然后去选中左侧视频



这个时候，控制台会跳转到Elements标签下面，并定位到video这个标签处。这个时候其实有些人已...]]></description><category></category></item><item><title><![CDATA[[波波带你手动提取网页视频]01讲 基础]]></title><link>https://blog.youkuaiyun.com/AndyQsmart/article/details/102958274</link><guid>https://blog.youkuaiyun.com/AndyQsmart/article/details/102958274</guid><author>AndyQsmart</author><pubDate>Fri, 08 Nov 2019 17:21:34 +0800</pubDate><description><![CDATA[公众号：程序员波波



在生活中，我们经常看一些网页视频，有些视频感觉非常不错，都会希望能够下载下来自己珍藏，但是往往就试而不得。

这次波波带你一步一步手动提取网页视频。

首先，需要有一些准备知识。

一、网页视频

网页中的视频一般是通过一个video标签来播放的，会有一些其他技术手段来避开video或者隐藏video。避开video可能会使用一些其他播放器来播放视频，隐藏video一般会...]]></description><category></category></item><item><title><![CDATA[React中同步引入script标签]]></title><link>https://blog.youkuaiyun.com/AndyQsmart/article/details/79805868</link><guid>https://blog.youkuaiyun.com/AndyQsmart/article/details/79805868</guid><author>AndyQsmart</author><pubDate>Mon, 16 Sep 2019 14:20:55 +0800</pubDate><description><![CDATA[公众号：程序员波波



之前写了一篇异步引入的博客，但是在开发中遇到，可能某些js之间有调用关系，那么引入的时候就需要按照一定的顺序进行同步引入。

这里采用了递归的方式：


class Tools
{
    static loadScript(url, callback)
    {
        let old_script = document.getElementById(url)...]]></description><category></category></item><item><title><![CDATA[React中异步引入script标签]]></title><link>https://blog.youkuaiyun.com/AndyQsmart/article/details/79790381</link><guid>https://blog.youkuaiyun.com/AndyQsmart/article/details/79790381</guid><author>AndyQsmart</author><pubDate>Mon, 16 Sep 2019 14:20:42 +0800</pubDate><description><![CDATA[公众号：程序员波波



React中支持异步加载script，通过react-loadable可以在React中异步import。

但是目前遇到一个问题，引入全局的script标签。但是如果把所有标签全部写在index.html中的话，那么第一页加载的速度会变慢，所以希望实现异步引入script标签的方法。

目前通过document.createElement的方法来动态创建脚本标签，然后通...]]></description><category></category></item></channel></rss>