超碰91资源站-超碰97豆花-超碰97人妻-超碰97人人干-超碰97人人香蕉-超碰97天天操-超碰97在线资源站-超碰97资源站共享-超碰97资源站总站-超碰aa在线91-超碰av操-超碰爱爱

半岛外围网上直营

輕量級流程圖控件GoJS示例連載(四):邏輯電路

翻譯|使用教程|編輯:黃竹雯|2018-11-27 09:51:52.000|閱讀 682 次

概述:輕量級流程圖控件GoJS流程圖示例

# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>

相關鏈接:

GoJS是一款功能強大,快速且輕量級的流程圖控件,可幫助你在JavaScript 和 HTML5 Canvas程序中創建流程圖,且極大地簡化你的JavaScript / Canvas 程序。

點擊查看產品詳情 | 最新試用版下載

updateStates函數通過調用一個函數來根據類型更新每個節點,該函數使用鏈接到節點的顏色來確定退出時它們的顏色。紅色表示零或假; 綠色表示一或真。雙擊輸入節點切換true/false。

將鼠標懸停在節點上查看其類別,主圖左側的調色板允許用戶拖放新節點。然后可以使用在節點模板上定義了端口鏈接的這些節點。每個輸入端口只能有一個輸入鏈接,而輸出端口可以有許多輸出鏈接。這由GraphObject.toMaxLinks屬性控制。

在頁面中查看此示例頁面的源代碼


 var red = "orangered";  //  0 or false
    var green = "forestgreen";  // 1 or true
    function init() {
      if (window.goSamples) goSamples();  // init for these samples -- you don't need to call this
      var $ = go.GraphObject.make;  //  for conciseness in defining templates

      myDiagram =
        $(go.Diagram, "myDiagramDiv",  // create a new Diagram in the HTML DIV element "myDiagramDiv"
          {
            initialContentAlignment: go.Spot.Center,
            allowDrop: true,  // Nodes from the Palette can be dropped into the Diagram
            "draggingTool.isGridSnapEnabled": true,  // dragged nodes will snap to a grid of 10x10 cells
            "undoManager.isEnabled": true
          });

      //  when the document is modified, add a "*" to the title and enable the "Save" button
      myDiagram.addDiagramListener("Modified", function(e) {
        var button = document.getElementById("saveModel");
        if (button) button.disabled = !myDiagram.isModified;
        var idx = document.title.indexOf("*");
        if (myDiagram.isModified) {
          if (idx < 0) document.title += "*";
        } else {
          if (idx >= 0) document.title = document.title.substr(0, idx);
        }
      });

      var palette = new go.Palette("palette");  // create a new Palette in the HTML DIV element "palette"
      // creates relinkable Links that will avoid crossing Nodes when possible and will jump over other Links in their paths
      myDiagram.linkTemplate =
        $(go.Link,
          {
            routing: go.Link.AvoidsNodes,
            curve: go.Link.JumpOver,
            corner: 3,
            relinkableFrom: true, relinkableTo: true,
            selectionAdorned: false, // Links are not adorned when selected so that their color remains visible.
            shadowOffset: new go.Point(0, 0), shadowBlur: 5, shadowColor: "blue",
          },
          new go.Binding("isShadowed", "isSelected").ofObject(),
          $(go.Shape,
            { name: "SHAPE", strokeWidth: 2, stroke: red }));

      // node template helpers
      var sharedToolTip =
        $(go.Adornment, "Auto",
          $(go.Shape, "RoundedRectangle", { fill: "lightyellow" }),
          $(go.TextBlock, { margin: 2 },
            new go.Binding("text",  "" , function(d) { return d.category; })));

      //define some common property settings
      function nodeStyle() {
        return [new go.Binding("location", "loc", go.Point.parse).makeTwoWay(go.Point.stringify),
                new go.Binding("isShadowed", "isSelected").ofObject(),
                {
                  selectionAdorned: false,
                  shadowOffset: new go.Point(0, 0),
                  shadowBlur: 15,
                  shadowColor: "blue",
                  toolTip: sharedToolTip
                }];
      }

      function shapeStyle() {
        return {
          name: "NODESHAPE",
          fill: "lightgray",
          stroke: "darkslategray",
          desiredSize: new go.Size(40, 40),
          strokeWidth: 2
        };
      }

      function portStyle(input) {
        return {
          desiredSize: new go.Size(6, 6),
          fill: "black",
          fromSpot: go.Spot.Right,
          fromLinkable: !input,
          toSpot: go.Spot.Left,
          toLinkable: input,
          toMaxLinks: 1,
          cursor: "pointer"
        };
      }

      // define templates for each type of node
      var inputTemplate =
        $(go.Node, "Spot", nodeStyle(),
          $(go.Shape, "Circle", shapeStyle(),
            { fill: red }),  // override the default fill (from shapeStyle()) to be red
          $(go.Shape, "Rectangle", portStyle(false),  //the only port
            { portId: "", alignment: new go.Spot(1, 0.5) }),
          { //if double-clicked, an input node will change its value, represented by the color.
            doubleClick: function (e, obj) {
                e.diagram.startTransaction("Toggle Input");
                var shp = obj.findObject("NODESHAPE");
                shp.fill = (shp.fill === green) ? red : green;
                updateStates();
                e.diagram.commitTransaction("Toggle Input");
              }
          }
        );

      var outputTemplate =
        $(go.Node, "Spot", nodeStyle(),
          $(go.Shape, "Rectangle", shapeStyle(),
            { fill: green }),  // override the default fill (from shapeStyle()) to be green
          $(go.Shape, "Rectangle", portStyle(true),  // the only port
            { portId: "", alignment: new go.Spot(0, 0.5) })
        );

      var andTemplate =
        $(go.Node, "Spot", nodeStyle(),
          $(go.Shape, "AndGate", shapeStyle()),
          $(go.Shape, "Rectangle", portStyle(true),
            { portId: "in1", alignment: new go.Spot(0, 0.3) }),
          $(go.Shape, "Rectangle", portStyle(true),
            { portId: "in2", alignment: new go.Spot(0, 0.7) }),
          $(go.Shape, "Rectangle", portStyle(false),
            { portId: "out", alignment: new go.Spot(1, 0.5) })
        );

      var orTemplate =
        $(go.Node, "Spot", nodeStyle(),
          $(go.Shape, "OrGate", shapeStyle()),
          $(go.Shape, "Rectangle", portStyle(true),
            { portId: "in1", alignment: new go.Spot(0.16, 0.3) }),
          $(go.Shape, "Rectangle", portStyle(true),
            { portId: "in2", alignment: new go.Spot(0.16, 0.7) }),
          $(go.Shape, "Rectangle", portStyle(false),
            { portId: "out", alignment: new go.Spot(1, 0.5) })
        );

      var xorTemplate =
        $(go.Node, "Spot", nodeStyle(),
          $(go.Shape, "XorGate", shapeStyle()),
          $(go.Shape, "Rectangle", portStyle(true),
            { portId: "in1", alignment: new go.Spot(0.26, 0.3) }),
          $(go.Shape, "Rectangle", portStyle(true),
            { portId: "in2", alignment: new go.Spot(0.26, 0.7) }),
          $(go.Shape, "Rectangle", portStyle(false),
            { portId: "out", alignment: new go.Spot(1, 0.5) })
        );

      var norTemplate =
        $(go.Node, "Spot", nodeStyle(),
          $(go.Shape, "NorGate", shapeStyle()),
          $(go.Shape, "Rectangle", portStyle(true),
            { portId: "in1", alignment: new go.Spot(0.16, 0.3) }),
          $(go.Shape, "Rectangle", portStyle(true),
            { portId: "in2", alignment: new go.Spot(0.16, 0.7) }),
          $(go.Shape, "Rectangle", portStyle(false),
            { portId: "out", alignment: new go.Spot(1, 0.5) })
        );

      var xnorTemplate =
        $(go.Node, "Spot", nodeStyle(),
          $(go.Shape, "XnorGate", shapeStyle()),
          $(go.Shape, "Rectangle", portStyle(true),
            { portId: "in1", alignment: new go.Spot(0.26, 0.3) }),
          $(go.Shape, "Rectangle", portStyle(true),
            { portId: "in2", alignment: new go.Spot(0.26, 0.7) }),
          $(go.Shape, "Rectangle", portStyle(false),
            { portId: "out", alignment: new go.Spot(1, 0.5) })
        );

      var nandTemplate =
        $(go.Node, "Spot", nodeStyle(),
          $(go.Shape, "NandGate", shapeStyle()),
          $(go.Shape, "Rectangle", portStyle(true),
            { portId: "in1", alignment: new go.Spot(0, 0.3) }),
          $(go.Shape, "Rectangle", portStyle(true),
            { portId: "in2", alignment: new go.Spot(0, 0.7) }),
          $(go.Shape, "Rectangle", portStyle(false),
            { portId: "out", alignment: new go.Spot(1, 0.5) })
        );

      var notTemplate =
        $(go.Node, "Spot", nodeStyle(),
          $(go.Shape, "Inverter", shapeStyle()),
          $(go.Shape, "Rectangle", portStyle(true),
            { portId: "in", alignment: new go.Spot(0, 0.5) }),
          $(go.Shape, "Rectangle", portStyle(false),
            { portId: "out", alignment: new go.Spot(1, 0.5) })
        );

      //add the templates created above to myDiagram and palette
      myDiagram.nodeTemplateMap.add("input", inputTemplate);
      myDiagram.nodeTemplateMap.add("output", outputTemplate);
      myDiagram.nodeTemplateMap.add("and", andTemplate);
      myDiagram.nodeTemplateMap.add("or", orTemplate);
      myDiagram.nodeTemplateMap.add("xor", xorTemplate);
      myDiagram.nodeTemplateMap.add("not", notTemplate);
      myDiagram.nodeTemplateMap.add("nand", nandTemplate);
      myDiagram.nodeTemplateMap.add("nor", norTemplate);
      myDiagram.nodeTemplateMap.add("xnor", xnorTemplate);

      //share the template map with the Palette
      palette.nodeTemplateMap = myDiagram.nodeTemplateMap;

      palette.model.nodeDataArray = [
        { category: "input" },
        { category: "output" },
        { category: "and" },
        { category: "or" },
        { category: "xor" },
        { category: "not" },
        { category: "nand" },
        { category: "nor" },
        { category: "xnor" }
      ];

      // load the initial diagram
      load();

      // continually update the diagram
      loop();
    }

    // update the diagram every 250 milliseconds
    function loop() {
      setTimeout(function() { updateStates(); loop(); }, 250);
    }

    // update the value and appearance of each node according to its type and input values
    function updateStates() {
      var oldskip = myDiagram.skipsUndoManager;
      myDiagram.skipsUndoManager = true;
      //do all "input" nodes first
      myDiagram.nodes.each(function(node) {
          if (node.category === "input") {
            doInput(node);
          }
        });
      //  now we can do all other kinds of nodes
      myDiagram.nodes.each(function(node) {
          switch (node.category) {
            case "and":       doAnd(node); break;
            case "or":         doOr(node); break;
            case "xor":       doXor(node); break;
            case "not":       doNot(node); break;
            case "nand":     doNand(node); break;
            case "nor":       doNor(node); break;
            case "xnor":     doXnor(node); break;
            case "output": doOutput(node); break;
            case "input": break;  // doInput already called, above
          }
        });
      myDiagram.skipsUndoManager = oldskip;
    }

    // helper predicate
    function linkIsTrue(link) {  // assume the given Link has a Shape named "SHAPE"
      return link.findObject("SHAPE").stroke === green;
    }

    // helper function for propagating results
    function setOutputLinks(node, color) {
      node.findLinksOutOf().each(function(link) { link.findObject("SHAPE").stroke = color; });
    }

    // update nodes by the specific function for its type
    //determine the color of links coming out of this node based on those coming in and node type


    function doInput(node) {
      //the output is just the node's Shape.fill
      setOutputLinks(node, node.findObject("NODESHAPE").fill);
    }

    function doAnd(node) {
      var color = node.findLinksInto().all(linkIsTrue) ? green : red;
      setOutputLinks(node, color);
    }
    function doNand(node) {
      var color = !node.findLinksInto().all(linkIsTrue) ? green : red;
      setOutputLinks(node, color);
    }
    function doNot(node) {
      var color = !node.findLinksInto().all(linkIsTrue) ? green : red;
      setOutputLinks(node, color);
    }

    function doOr(node) {
      var color = node.findLinksInto().any(linkIsTrue) ? green : red;
      setOutputLinks(node, color);
    }
    function doNor(node) {
      var color = !node.findLinksInto().any(linkIsTrue) ? green : red;
      setOutputLinks(node, color);
    }

    function doXor(node) {
      var truecount = 0;
      node.findLinksInto().each(function(link) { if (linkIsTrue(link)) truecount++; });
      var color = truecount % 2 === 0 ? green : red;
      setOutputLinks(node, color);
    }
    function doXnor(node) {
      var truecount = 0;
      node.findLinksInto().each(function(link) { if (linkIsTrue(link)) truecount++; });
      var color = truecount % 2 !== 0 ? green : red;
      setOutputLinks(node, color);
    }

    function doOutput(node) {
      // assume there is just one input link
      // we just need to update the node's Shape.fill
      node.linksConnected.each(function(link) { node.findObject("NODESHAPE").fill = link.findObject("SHAPE").stroke; });
    }

    //  save a model to and load a model from JSON text, displayed below the Diagram
    function save() {
      document.getElementById("mySavedModel").value = myDiagram.model.toJson();
      myDiagram.isModified = false;
    }
    function load() {
      myDiagram.model = go.Model.fromJson(document.getElementById("mySavedModel").value);
    }

<div id="sample">
<div style="width:100%; white-space:nowrap;">
<div id="palette" style="border: solid 1px black; height: 500px">&nbsp;</div>

<div id="myDiagramDiv" style="border: solid 1px black; height: 500px">&nbsp;</div>
</div>

<p>The Logic Circuit sample allows the user to make circuits using gates and wires, which are updated whenever a Link is modified and at intervals by a looped setTimeout function.</p>

<p>The <strong>updateStates</strong> function calls a function to update each node according to type, which uses the color of the links into the node to determine the color of those exiting it. Red means zero or false; green means one or true. Double-clicking an input node will toggle true/false.</p>

<p>Mouse over a node to see its category, displayed using a shared Adornment set as the tooltip. A Palette to the left of the main diagram allows the user to drag and drop new nodes. These nodes can then be linked using ports which are defined on the various node templates. Each input port can only have one input link, while output ports can have many output links. This is controlled by the GraphObject.toMaxLinks property.</p>

<div>
<div>SaveLoadDiagram Model saved in JSON format:</div>
<textarea>{ &quot;class&quot;: &quot;go.GraphLinksModel&quot;,
  &quot;linkFromPortIdProperty&quot;: &quot;fromPort&quot;,
  &quot;linkToPortIdProperty&quot;: &quot;toPort&quot;,
  &quot;nodeDataArray&quot;: [
{&quot;category&quot;:&quot;input&quot;, &quot;key&quot;:&quot;input1&quot;, &quot;loc&quot;:&quot;-150 -80&quot; },
{&quot;category&quot;:&quot;or&quot;, &quot;key&quot;:&quot;or1&quot;, &quot;loc&quot;:&quot;-70 0&quot; },
{&quot;category&quot;:&quot;not&quot;, &quot;key&quot;:&quot;not1&quot;, &quot;loc&quot;:&quot;10 0&quot; },
{&quot;category&quot;:&quot;xor&quot;, &quot;key&quot;:&quot;xor1&quot;, &quot;loc&quot;:&quot;100 0&quot; },
{&quot;category&quot;:&quot;or&quot;, &quot;key&quot;:&quot;or2&quot;, &quot;loc&quot;:&quot;200 0&quot; },
{&quot;category&quot;:&quot;output&quot;, &quot;key&quot;:&quot;output1&quot;, &quot;loc&quot;:&quot;200 -100&quot; }
 ],
  &quot;linkDataArray&quot;: [
{&quot;from&quot;:&quot;input1&quot;, &quot;fromPort&quot;:&quot;out&quot;, &quot;to&quot;:&quot;or1&quot;, &quot;toPort&quot;:&quot;in1&quot;},
{&quot;from&quot;:&quot;or1&quot;, &quot;fromPort&quot;:&quot;out&quot;, &quot;to&quot;:&quot;not1&quot;, &quot;toPort&quot;:&quot;in&quot;},
{&quot;from&quot;:&quot;not1&quot;, &quot;fromPort&quot;:&quot;out&quot;, &quot;to&quot;:&quot;or1&quot;, &quot;toPort&quot;:&quot;in2&quot;},
{&quot;from&quot;:&quot;not1&quot;, &quot;fromPort&quot;:&quot;out&quot;, &quot;to&quot;:&quot;xor1&quot;, &quot;toPort&quot;:&quot;in1&quot;},
{&quot;from&quot;:&quot;xor1&quot;, &quot;fromPort&quot;:&quot;out&quot;, &quot;to&quot;:&quot;or2&quot;, &quot;toPort&quot;:&quot;in1&quot;},
{&quot;from&quot;:&quot;or2&quot;, &quot;fromPort&quot;:&quot;out&quot;, &quot;to&quot;:&quot;xor1&quot;, &quot;toPort&quot;:&quot;in2&quot;},
{&quot;from&quot;:&quot;xor1&quot;, &quot;fromPort&quot;:&quot;out&quot;, &quot;to&quot;:&quot;output1&quot;, &quot;toPort&quot;:&quot;&quot;}
 ]}
    </textarea></div>
</div>

想在GitHub上查看此示例頁面的源代碼,可。


標簽:流程圖

本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@ke049m.cn


為你推薦

  • 推薦視頻
  • 推薦活動
  • 推薦產品
  • 推薦文章
  • 慧都慧問
掃碼咨詢


添加微信 立即咨詢

電話咨詢

客服熱線
023-68661681

TOP
利記足球官網(官方)網站/網頁版登錄入口/手機版登錄入口-最新版(已更新) 真人boyu·博魚滾球網(官方)網站/網頁版登錄入口/手機版登錄入口-最新版(已更新) 最大網上PM娛樂城盤口(官方)網站/網頁版登錄入口/手機版登錄入口-最新版(已更新) 正規雷火競技官方買球(官方)網站/網頁版登錄入口/手機版登錄入口-最新版(已更新) 雷火競技權威十大網(官方)網站/網頁版登錄入口/手機版登錄入口-最新版(已更新) boyu·博魚信譽足球官網(官方)網站/網頁版登錄入口/手機版登錄入口-最新版(已更新) 權威188BET足球網(官方)網站/網頁版登錄入口/手機版登錄入口-最新版(已更新) 正規188BET足球大全(官方)網站/網頁版登錄入口/手機版登錄入口-最新版(已更新) 精品日韩妖精视频在线观看免费 | 丰满人妻熟妇乱又伦精品软件 | 顶级少妇a级毛片 | 国产精品一卡二卡三卡乱码 | 国产精品男女猛烈高潮激情 | 国产精品白丝jk白祙喷水视频 | 国产精品乱码 | av无码国产精品性色aⅴ | 97人人超碰国产精品最新老片 | 国产肥熟女视频一区二区三区 | 国产欧美日韩综合一区在线播放 | 国产做爰全免费的视频避孕 | 岛国毛片一级一 | 国产欧美高清一区二区三区 | 国产亚洲一区二区在线观看 | 国产一区日韩二区欧美三区在线 | 国产91小视 | 18禁喷水流白浆自慰视噜噜噜 | a视频在线观看无码 | 成人精品一级毛片 | 国产经典一区二区三区蜜芽 | 国产女王重度 | 99国产一区二区三 | 成人午夜看片在线观看 | 国产精品亚洲产品一区二区三区 | 国产精品三级a三级三级午夜 | 国产成人精品久久一区二区 | 国产经典在线观看一区 | 99久久国产主播综合精品 | 91po国产在线精品免费观看 | 91麻豆精品国产91久久久久 | 国产精品亚洲综合一区在线观 | 国产三级高清视频在线观看 | 国产精品免费在线播放 | 国产精品成人麻烦视频 | 成人在线观看丁香 | 国产精品免 | 韩国午夜福利理论片在线观看 | 国产毛片毛多水多密月 | 国产精品一区第二页尤自在拍 | av在线网站无码不卡的 | 国产毛片一区二区三区视频 | 精品人妻大屁股白浆久久 | 国产精品一区二区久久优播 | 国产91高清免费 | 91精品国产99 | 99久久精品国产中国久久 | 99久久午夜精品一区二区 | 国产超碰人人模人人爽人人添 | 丰满爆乳无码一 | 国产成人18黄网站在线观看 | av喷水高潮喷 | 精品国产伦一区二区三区在线观看 | 精品国产自在观看久久 | 91午夜在线免费观看小视频 | 91蜜桃国产成人精 | 国产日韩成人 | 国产中文在线 | 国产麻豆精品一区二区三 | 精品国产成人一区二区 | 精品国产髙清在线看国产毛片 | 国产精品一区二区三区高清 | 成人午夜免费观看 | 精品明星系列无码专区 | 福利一区二区三区视频在线观看 | 国产高清视频在线观看播放 | 国产一区在线观看 | 成人午夜看片 | 国产精品无码一区二区久久 | 国产成人高清精品免费 | 国产剧情对白刺激在线 | 国产主播粉嫩的白浆在线观看 | 国产成人午夜一区二区 | 国产精品毛片更新无码 | 国产蜜桃色欲91精品一区二区 | 国产成人女人视频在线观看 | 成年女人大片免费播放完整 | 白嫩美女在线啪视频观看 | 成人h视频在线观看 | 国产超高清麻豆精品传媒麻豆精品 | 国产免费一区二区三区最新 | 国产成人91亚洲精品无码 | 国产毛片久久久久久国产毛片 | 国产精品原创巨作av | 国产精品伊人久久久久 | 大白屁股白浆一区二区 | 国产对白俱乐部交换在线播放 | 精品久久久久久免费影院 | 国产麻豆秘麻豆 | 国产美女免费牲交视频 | 影院亚洲欧美综合 | 国产在线视频欧美一区二区三区 | 东京热人妻无码一区二区av | 国产在线a不卡免费视频 | 高潮流白浆潮喷在线播放视频 | 成人一区二区免费中文字幕视 | 国产边按摩边被躁在线播放 | 国产+日韩+另类+视频一区 | 精品人妻大屁股白浆无码下载 | 91麻豆精品国产自产 | 国产美女精品自在线拍幼 | 国产精品免费在线播放 | 国产91高清免费 | 国产精品人成人免 | 国产一本大道中文在线 | 岛国在线无码免费观看 | 国产日韩精品99久久 | 国产产一区二区三区久久毛片国语 | 91蜜桃传媒精品久久久一区二 | 国产美女亚洲精品久久久毛片 | 国产精品毛片a∨一区二区三区 | 国产成人最新三级 | 精品久久久久久久一区二区 | 国女精品爽爽一区二区 | 国产艳福片内射视频播放免费 | 国产精品久久大陆妓女 | 国产91熟女高潮一区二区 | 国产精品成人亚发布 | 国产韩国日本欧美在线观看 | 国产无码理论视频网 | 国产精品亚洲第一视频 | 国产麻豆放荡av剧情演绎 | 国产高清在线观看a | 国产欧美精品在线 | 国产欧美va天 | 动漫av专区 | 精品国产三级国产av中文 | 国产综合激情在线亚洲第一页 | 国产欧美日韩综合aⅴ天堂 国产欧美日韩综合第一区第二区 | 高清国产亚洲精品自在久久 | 国产综合激情在线亚洲第一页 | 91在线精品亚洲一区二区 | 国产一区在线视频 | 国产一区精品久久综合 | 精品久久久久久中文字幕一区 | av在线无码播放 | 精品国产自在久国产应用 | 99久久综合国产精品免费 | 国产美女高潮久久久久白浆 | aⅴ无码播放一级毛片免费 aⅴ无码午夜在线 | 丰满多毛的大隂户视频 | 国产品无码一区二区三区在线 | 国产a级毛片色咪味 | 国产精品亚洲欧美日韩区 | 99九九免费 | 国产精品麻豆综合在线 | 91剧情国产极品高跟丝袜 | 成人免费一区二区三区视频 | 2025国产精品极品色在线 | 国产三级九九久久久久三级 | 福利精品一区二区三区 | 91丝袜在线观看 | 高清精品一区二区三区 | 成年女人毛片免费 | 国产女同一区二区在线 | 69国产成人综合久久精品 | 国产成人av在线免播放观看 | 按摩高潮a片一区二区三区 按摩师舌头进去添的我好舒服 | 国产精品亚洲av三区二区 | 国产成人亚洲精品无码h在线 | 东京热男人的天堂精品 | 国产精品爆乳无码一区二区三区 | 18国产精品 | 国产偷窥女洗浴在线 | 精品无码人妻一区二区三 | 国产无码黄色视频在线观看 | 国产精品午夜免费观看 | 国产一区二区高清 | 国产精品+日韩精 | 国内第一永久免费福利视频 | 国产精品线观看 | 18禁超污无遮挡免费av | 国产亚洲欧美久久久久 | 潮喷大喷水系列无码 | 国产成年码av片在线观看 | 精品国产中文自拍 | 国产欧洲日韩一区二区三区在线观看 | 精品人妻一区二区三区夜夜嗨 | 国产爽视 | 国产精品无码日韩一区二区三区 | 国产1024香蕉在线观看 | 国产午夜影 | 国产精品一区二区网曝门 | 精品无码一区二区三区aⅴ 精品无码一区二区三区av | 国产在线视频不卡一区二区 | 国产av综合av | 国产亚洲欧洲日韩 | av天堂| av色综合网站 | 国产灌醉视频一区二区 | 911午夜福利精品 | 国产精品视频一区二区亚瑟 | 国产aⅴ片 | 国产亚洲日韩在线 | 国产精品一区二区av麻豆 | 2025自拍偷在线精品自 | 国产精品麻豆专区 | 国产美女一区二区在线观看 | 国产综合欧美视频 | 国产精品女同一区 | 国产欧美va欧美va香蕉在 | 国产1区2区在线观看 | 国产午夜精品一区二区三区不卡 | 国产日韩成人精品视频 | 国产成年女人特黄特色大片 | av无码导航| 波多野结衣高清中文在线 | 国产一级毛片a午夜一级毛片 | 精品免费一区二区三区 | 国产色视频在线观看免费 | 精品无码在线看片 | 国产成人精品优优av | av黑人手机版天堂网 | 2025久久免费精品国产72精品 | 国产成人综合亚洲欧 | 国产激情久久久久成人影院 | 成人全黄三级视频在线观 | 韩国日本亚洲欧洲一区二区三 | av无码精品一区二区久久 | 99国产精品久久久久成人热 | 91精品2014 | 国产中文欧美 | 国产av无码片 | 国产午夜理论不卡在线观看 | 国产精品福利久久 | 国产高清免费观看a∨片 | 国产欧美日韩综合一区二区三区 | 91po国产在线精品免费观看 | 国产精品日产无码av永久不卡 | 绯色国产av无码一区二区 | 国产成年无码aⅴ片在线观看 | 国产精品国语刺激对白在线观看 | 国产欧美日韩综合一区在线观看 | 精品日韩人伦一区二区三区蜜桃 | 91网站免费看 | 国产精品毛片a∨一区二区三区 | 国产三级电影hd在线观看 | 国产在线亚洲精品观看不卡按摩 | 精品丰满人妻无套内射 | 国产成人无码区免费内射一片色欲 | 国产性爱在线播放 | 国产成人牲交在线观看视 | 后入内射欧美99二区视频 | a级全黄试看30分钟观看 | av网站在线免费观看每日 | 国产午夜成人无码免费看 | 97人妻无码专区 | 国产91精品丝袜一区二区 | 国产一区二区成人久久919色 | 国产美女三级片视频 | 国产一区二区无 | 国产麻豆极品色哟哟 | 国产二级一片内射视频播 | 国产经典自拍视频在 | 国产成人无码免费一区二区三区 | 丰满人妻少妇久久久久久 | 国产对白刺激 | 国产成人精品月日本亚洲语音 | 国产美女一级性大黄片 | 成人国产精品秘久久久剧情紧凑 | 国产真实自在自线 | 精品深夜av无码一区二区老年 | 国产在线一区二区三区不卡 | 国产精品成人无码久久久久久 | 91精品国产高清久久 | 911午夜福利精品 | 国产在线欧美日韩色 | 岛国一区二区在线观看蜜 | 国产精品欧美精品aⅴ在线 国产精品欧美精品国产主播 | 99久久精品国产精品亚洲 | 国产精品国产三级国产普通话99 | 国产一区二区三精品久 | 国产精品欧美一区二区三区不卡 | 精品日韩欧美一区二区三区 | 国产成人精品麻豆免费网站 | 国产精品高清一区二区不卡乱 | 国内精品一级毛片免费看 | 成人在线免费网站 | 99精品人妻无码专区 | 国产熟女亚洲精品明星自拍 | 福利一区二区三区视频午夜观看 | 国产在线观看一区免费精品 | 18处破外女出血在线 | 国产肥老上视频 | av中文字幕在线亚洲 | 国产成人啪视频一区二区三区 | 国产精品果冻传媒呆梦梦 | 国产精品国语 | 国产av精品一区二区 | 国产99热精品码毛片在线 | 国产偷人妻精 | 国产成人无码精品 | 97人妻碰碰碰久久久久禁片 | 国产亚洲欧洲人人网在线观看 | av无码精品久久久久精品免费 | 1000部啪啪未满十八勿入 | 精品国产aⅴ一区二区三区4区 | 国产无码在线观看免费在 | 国产精品啪啪视频一区二区 | 91青青青青国产在线观看 | 超碰国产在线高清无码 | 国产一区二区免费视频 | 国产精品制服丝袜另类 | 国内粉嫩小视频在线观看网站 | 国产精品无码久久av不卡 | 东京热一精品 | 国产高清在线观看一区二区三区 | 国产āv日韩āⅴ亚洲āv无码馆 | 国产成人猛男69精品视频 | 97人人超碰国产精品最新 | 精品精品高清国 | 精品动漫无码一区二区三区 | 国产欧美日韩中文字幕第一页 | 国产成人免费永久播放视频平台 | 激性爽啪啪一二三区 | 岛国美女少妇一级片 | 高清无码毛片国产 | 成人做爰视频试看120秒 | 黑色丝袜脚足国产在线看 | 国产成人一区二区三区免费视频 | 91欧洲在线视精品 | 国产尤物一区二 | 精品熟女碰碰人人a久久 | 99国产精品欲一区二区三区 | 国产午夜场免费视频在线播放 | 国产91丝袜播放动漫 | 精品无人乱码一区二区三区 | 国产极品超大美女白嫩在线 | 国产成人无码va在线观看 | 精品无人区乱码1区2区3区在线 | 国精品无码一区二区三区在线蜜臀 | 国产成人精品无码免费看 | 国产美女福利视频一区二区 | 国产午夜无码视频在线观看 | 国产成人亚洲老熟女精品 | 国产自产v一区二区三区c | 国产无码一区二区三区不卡视频 | 高清欧美日韩一区二区三区在线 | 91九色精品 | 91精品国产一区二区 | av午夜福利一片免费看久久 | 国产av无码片毛片一级流奶水 | 国产精品自拍一区 | 国产熟女亚洲精品明星自拍 | 国产精品一区二区三区高清在线 | 国产白丝在 | 精品无码卡通视频一区二区 | 精品人妻无码专区中文字幕 | 国产精品va无码二区 | 精品美女视频免费直播 | 91精品久久久久一区二区三区 | 国产三级电影院电影 | 调教视频一区 | ts人妖国产一区 | 成人免费无码大片a毛片18 | 国产免费高清mv视频在线观看 | 2025国产精品自在拍在线播放 | 潮喷失禁大喷水a | 国产精品毛片久久久久久av | 国产精品美女久久久 | 国产爆乳合集在线观看视频 | 激性爽啪啪一二三区 | 国产精品视频第一区二区 | a级国产乱午夜理论片在线观看 | 东京热无码人妻 | 国产视频一区二区在线观看 | 国产精品美女久久久久av福利 | 国产aⅴ视频一区二区三区 国产aⅴ熟女 | 成人国产精品一区二区网站! | 动漫精品偷拍日韩 | 国产午夜福利片1000无码 | av无码资源 | 国产成人aⅴ尤物国产 | 高潮喷水的毛片 | 国产成本人片无码免费 | 国产成人精品高清在线观看91 | av免费黄色网址 | 国产免费午夜福利在线播放11 | 国产a级理论片无码老男人 国产a级毛 | 国产999精品久久久 国产999精品久久久久 | 精品无码久久久久久久久借妻 | 国产人妻精品一区二区三区 | 国产精品无码一区二区在线观一 | 国产麻豆国精精品久久毛片 | 二区三区好的精华液杨超越 | 国产精品一区二区三区久久久久 | www国产亚洲精品久久久日本 | 国产偷录视频叫床高潮 | 国产成人丝袜视频在线观看 | 国产精品午夜福利在线观看地址 | 国产av天堂无码一区二区三区 | 国产精品刮毛 | 国产成人精品优优av | 91精品国产综合久久小美女 | 91久久:助你畅享无忧体验 | 国产精品成人3p一区二区三区 | 国产欧美成人xxx视频 | 精品无码国产一区二区三区麻 | 国产精品亚洲色图 | 国产精品成久久久久三级 | 国产爆白浆水真多视频 | 国产成人综合久久精品最新 | 国产不卡高清视频在线观看 | 国产高潮流白浆喷水免费网站 | 国产精品视频无码一区二区免 | 国内综合精品午夜久久资源 | 国产成人亚洲日韩欧美久久久 | 黑丝一区二区三区 | 国产精品亚洲日韩aⅴ在线观看 | 国产精品一区二区高清在线 | 国产成人黄网在线免 | 国产在线观看一区 | a性色生活片久久毛片牛牛 a亚洲va老司机 | 91se在线看片国产免费观看 | 91精品手机国产在线破解版 | 国产成人精品a视频一区777 | 成人家庭影院日韩午夜 | 国产精品免费高清在线观看 | 国产制服丝袜在线一区 | 国产熟女一区二区精品免费 | 国产人妻人伦精品午夜剧场 | 国产成人精品无码免费看 | 国产永久在线观看 | 国产国拍亚洲精品午夜不卡嘿嘿 | 国产精品白丝网站 | 91国自产精品中文 | 91婷婷| 国产精品无码久久久最线观看 | 国产经典中文字幕影片 | 国产激情无码一区二区在线看 | 国产极品精品无码在线播出 | 国产成人自拍视频 | 国产毛a片啊久久久久久按摩 | 精品国产女主播在 | 精品国产免费人成电影在线观看 | 动漫精品无码视频一区二区三区 | 国产精品夜间视频香蕉 | 国产福利一区二区三区 | av毛片久久久久午夜福利hd | 国产麻豆精 | 国产成人av乱码免费观看入口 | 国产成人综合久久精品推 | 韩国免费a级毛片 | 成熟女人乱伦亚洲一区二区三区 | 国产午夜福利一区在线观看 | 国产欧美野外性生活 | 国产毛片黄色美女视频 | 国产av日韩毛片 | 东京热人妻无码一区二区av | 东京热中文字幕a专区 | 国产午夜福利精品一 | 国产在线亚洲精品观看不卡按摩 | 1区2区3区产品乱码免费 | 国产精品va免费视频 | 激情内射人妻1区2区3区 | 国产精品亚洲一区二区三区欲 | 18禁免费无码无遮挡网站 | 国产精品午夜免费观看 | 国产成人综合久久精品推最新 | 成人激情五月天 | 国产av大陆精品一区二区三区 | 国产av无码一级麻 | 国产免费一区二区三区在线 | 精品毛片无码波多野结衣 | 国产在线无码色图 | 国产精品黄在线观看免费软件 | 国产成人精品三上悠亚久久 | 国产精品无码一区二区三四区 | 高清无码爱爱免费视频 | 3d动漫精品啪啪一区 | av无码国产精品性色aⅴ | 丰满人妻一区二区三区46 | 国产欧美久久久精品 | 国产激情一区二区三区成人免费 | 韩国美女主播热舞 | 国产不卡视频一区二区三区 | 国产福利一区二区在线精品 | 91久久久久 | 国产美女无套粉嫩白浆在线 | 91成人国产网站在线观看 | 国产一区二区在线亚洲中文在线 | 国产v一级毛多内射禁果a | 91亚洲中文字幕在线播放 | 国产精品卡通动漫蜜臀av | 成人片在线观看地址kk4444 | 国产肥熟女视频一区 | 国精品午夜福利视频不卡 | 国产交换精品一区二区三区免费 | 国产av巨作精品原创 | 99久久一区二区三区免费 | 精品人妻少妇一区二区 | 国产主播福利精品一区二区 | 国产中文字幕免费不卡 | 国产熟女aa级毛片www | 国产美女被艹在线 | 91av国产在线 | 成人午夜a级毛片免费 | 国产av亚洲精品久久久久久 | 国语精品自产拍久久 | 91精品国产肉丝高跟在线观 | 二区三区手机在线观看 | 动漫av纯肉无码av电影网 | av无码精品久久不卡网站 | 国产精品成人黄色片 | 91视频免费看无限看下载 | 91视频播放 | 激情人妻另类人妻伦 | 国产在线视欧美亚综合 | 国自产拍高清精品 | 国产a级毛片久久影院 | 精品日韩av一区二区三区 | 加勒比无码一区人妻 | 成年女人免费视频播放成年m | 91免费在线视频 | 加勒比精品久久一区二区三区 | 成人国产一区二区三区香蕉 | 国产麻豆精品免费密入口 | 精品成人一区二区不卡 | 大尺度电影推荐(九) | 国产欧美精品午夜在线播放 | 国产精品青青在线麻豆 | 二区在线观看 | 国产成年女人特黄特色大片免费 | 精品人妻中文一区二区中文 | 国产精品亚洲无线码在线播放 | 91精品云霸高清中文字幕 | 国产一区二区三区亚洲欧美 | 国产精品国语对白露脸在线播放 | 国产精品成人无码av无码免费 | 国产精品高跟丝袜一区 | 国产极品粉嫩福利姬萌白酱 | 国产在线高潮流白浆免费观看 | 国产91成人免费网站 | 国产观看精品一区二区三区 | 国语自产偷拍精品视 | 国产一级内谢a级高清毛片 国产一级内谢a级高清毛片古装 | 国产97人人超碰caoprom… | 二区欧美人 | 精品国产亚洲大片 | 成人午夜免费一区二区 | 国产一区二区免费在线 | 国产三区不卡在线观看 | 激情人妻无码又大又粗蜜桃av | 国产区第一页 | 成人色屋精品视频 | 国产女主播视频观看网站 | 国产99久久久国 | 变态潮喷失禁大 | 丰满多毛的陰户 | 91尤物在线观看精品 | 国产宾馆调教在线视频 | 国产午夜手机精彩视频 | 国产精品无码一区二蜜臀影院 | 国产午夜成人无码免费看不卡 | 国产黄频在线观看免费 | 加勒比精品久久一区二区三区 | 国产码欧美日韩高清综合一区 | 国产日韩精品一区二区在线 | 91精品午夜福利在线观看入口 | 国产一区二区三区在线影院 | 国产成人精品123区免费视频 | 国产福利小视频在线免费观看 | 国产中文字幕精品一区二区三区 | 成人午夜黄网站在线观看 | 成人无码不卡在线一区 | 99精品国产免费久久国语 | 国产在线丝袜一区二区三区 | 国产一区视频在线观看 | 国产毛片特级av片 | 国产三片理论电影在线 | 91桃色无码国产在线观看二区 | a级无码毛片真真久久真人版 | 91传媒在线 | 国产美女视频免费看网站 | 二区在线观看免费 | av无码久久久久不卡网站下载 | av片在线观看免费光看高清 | 国产精品亚欧美一区二区 | 国产成人高清一区二区私人 | 国产欧美日韩综合精品二区久久 | 国产片婬乱一级毛片丫丫 | av无码一区在线观看 | 97人妻碰碰碰视频 | 国产91免费在线 | 国产午夜福利在线不卡视频 | 国产一区二区三区精品网站免费 | 精品无码av一区二 | 国产午夜人在线视频 | 国产成人精品免费视频大全五级 | 国产在线手机视频时看 | 成人免费观看的a级毛片 | 韩国福利影视一区二区三区 | 国产无码大姐操逼刺激视频 | 果冻传媒国产剧情免费版 | 国产亚洲日韩在线a不卡 | 精品国产亚洲av高清在线观看 | 国产精品人人妻人人爽人人牛 | www.一区| 国产精品淫水呻吟女王调教 | 国产aⅴ激情无码久久 | 国产精品一线免费观看 | 国产v欧美ⅴ日韩v在线观看 | 国产在线麻豆自在拍91精品 | 2025年国产精品每日更新 | 91av视频| 国产福利小视频在线播放观看 | 国产区精品一区二区 | 国产av天堂亚洲国产av麻豆 | 国产欧美日韩免费观看一区二区 | 国产三级自拍亚洲色欲色欲 | 国产一区视频在线播放 | 波多野结衣人妻在线一区二区 | 高清国产一区二区 | 国产欧美日韩一级片免费看 | 国产女人喷潮在线观看视频一 | 国产va在线播放频 | 国产夫妻内射一级一片 | 国产精品欧美一区二区三区 | 国产成视频在线观看 | 精品无码一区二区三区爱 | 国产免费一区二区视频麻豆 | 国产精品户外野外 | 精品国模一区二区三区四区性视频 | 国产精品一区二区三区污 | 国产超级a在线播放久日本 国产超级va在线观看 | 成人a影片在线观看 | 国产一区二区三区久久精品 | 国产精品国产三级厂七 | 国産精品久久久久久久 | 精品国产品对白在线 | 国产精品免费久久久久久久蜜桃 | 精品一区二区三区av天堂 | 国产精品原创巨作av免费 | 国产精品中文字幕在 | 国产经典三级av在线播放 | 精品国产一区二区三区久久久蜜臀 | 国产日韩精品视频一区二区三区 | av小黄片在线免费播放 | 成人綜合網亞洲伊人 | 国产极品乱码在线观看 | 国产麻豆国精精品久久毛片 | 国产无码一区二区久久 | 精品久久精品色综合 | 国产中文字幕在线播放网站 | 国产欧美亚洲日本网站 | 国产精品视频第一区二区 | av区无码字幕中文色 | 国产放荡对 | 成人免费午夜在线观看 | 99久久精品毛片免费播放高潮 | 91精品国产乱码久 | 国产精品制服丝袜电影 | 2025国产大陆天免费看黄色视频 | 国产偷亚洲电影在线观看网址 | 2025国产午夜福利免费看 | 国产av综合av | av一区二区三区蜜桃 | 国产精品成人一区二区 | 国产精品毛多多水多 | 精品人妻午夜一区二区三区 | 国产午夜视频在永久在线观看 | 大尺度啪啪人体午夜 | 91一区二区三区在线观看 | 91一区二区视频 | 国产av无码字幕制服高清 | 1024在线视频精品观看 | 成人综合亚洲日韩欧美色 | a人亚洲精v品无码樱花 | 东京热无码人妻一区二区三区av | 精品无码国产一区二区三区在线看 | 国产一区二区成人久久免费影院 | 精品人妻在线视频一区二区三区 | 国产成人亚洲精品大帝 | 国产精品夜夜爽张柏芝 | 国产美女黄性色av | 国产成人一区二区三区综合网影院 | 国自产成人免费视频在线播放 | 成人一区二区免费中文字幕视频 | 成人国产免费av一区二区三区 | 国产成人无码影片在线观看 | 丰满人妻av | 精品人妻中文一区二区中文 | 国产午夜福利在线播放 | 国产一级毛片大陆 | 国产福利秒拍视频大尺度 | 国产欧美精品专区一区二区 | 69国产成人综合久久精 | a级毛片无码兔费真人久久91 | 国产成人自拍视频在线观看 | www.深夜成人网站在线观看 | 国产精品剧情原创麻豆国产 | 国产高清在线精品一本大 | 国产在线拍揄自揄视频不卡99 | 国产激情视频在线观看免费播放 | 国产麻豆剧传媒精品国产av | 国产亚洲视频在线播放 | 国产1区2区3区国产精品 | 精品国产女主播在线直播观看 | 国产精品视频一区三区 | 高清无码电影免费专区 | 69精品人伦一区二区三区 | 成人国产精品高清在线观看 | 国产精品一区二区亚瑟不卡 | 91精品酒店情 | 国产欧美精品一区二 | 国产精品偷伦视频免费手机播 | 国产精品久久久天天影视香蕉 | 国产成人免费在线观看 | 国产亚洲欧美一区二区三区在 | 动漫精品动漫一区三区3d | 国产熟睡乱子伦视频观看看 | 国产专区免费资源网站 | 国产av天堂亚洲国产av麻豆 | 18禁黄网站禁片免费观看国产 | 91精品观看91久久久久久 | 国精产品一品二品国在线 | 91国产| 国产成人午夜免费视频 | 国产主播在线观看网 | 成人合成mv福利视频 | 国产麻豆精品国产三级国产av | 国产成人精品第一区二区三区 | 国产精品日本欧美一区二区 | 国产91无码网站在线观看 | 高清欧美日韩一区二区三区在线 | 国产精品亚洲专区无码导航 | 国产精品一区二区男人的 | 国产国拍亚洲精品午夜不卡嘿嘿 | 国产高清自产拍av | 国产经典在线观看一区 | 国产av国片精品一区二区 | 国精品人妻无码一区二区三区 | 国产va在线播放 | 国产成人在线综合 | 国产区免费国际一区二区 | 国产精品六区久久综合亚洲av | 18成人片 | 2025国产手机在线精品 | 99精品久久久久久久久久 | 国产精品国产三级国av | 成在人av抽搐高潮喷水流白浆 | av无码国产精品色午夜 | 国产精品老女人精品视 | 国产成人无码v片在线观看 国产成人无码v在线播放不卡 | a片在线观看跳转不卡 | 国产激情无码一区二区app | 国产一级a爱做片天天视频 国产一级a大黄片毛片视频 | 高清无码小 | 国产白丝精品久久av网站 | 成人三级视频观看 | 国产精品福利久久2025 | 18禁无遮拦无码国产在线播放 | 国产精品毛片久久久久 | 国产自产一线在线视频 | 国产91视频 | 国产高清一区二区不卡视频 | 国产一区二区三区久久精品 | 国产精品日日摸夜夜添夜夜添 | 成人精品视频在线观看不卡 | 国产精品白浆精子流水合集 | 精品国产伦一区二区三区在线观看 | 成人精品鲁一鲁一区二区 | 国产va免费精品高清在线观看 | 成人一区三区 | 黑人巨大无码中文字幕无码 | 国产微拍一区 | 成人免费播放网站 | 国产麻豆成人传媒免费观看 | 成人av鲁丝片一区二区免费 | 国产白丝精品91爽爽久久 | 国产一区二区三精品久久久无广告 | 精品码一区二区三区 | 国产对白精品刺激一区二区 | 国产美女高潮抽搐流水在线看 | 91在线国产在线观看高清 | 国产成人av无码片在线观看 | 精品国产精品国产偷麻豆 | 不卡一级毛片免费 | 91午夜精品久久久久精品 | 国产一区二区三区日韩欧美 | 国产va免费精品 | 国产亚洲欧美一区久久国产亚洲欧 | 波多野结衣日本一区二区在线观 | 韩国三级大全久久网站 | 国产成人综合在线观看网站 | 99精品久久毛片a片 99精品久久毛片a片潘金莲 | 爆乳女教师高清bd | 国产美女激情在线观看 | 岛国无码av不卡一区二区 | 国产精品日本一区二区 | 国产av老师黑色丝袜美腿 | 激情航班h版在线观看 | 国产日韩亚洲欧美视频在线 | 国产一区二区三区亚洲综合 | 国产av无码专区亚汌a√ | 99精品久久久| 国产福利一区二区久久 | 91无码久久国产线看观看 | 国产精品极品美女自在线观看免 |